MS Access 查询:用单个字符替换字符串中的所有字符

MS Access Query: Replace all Characters in a String with a Single Character

我通常会想出(或成功地 google!)解决我不知道的大多数事情,但这个让我很困惑,我敢肯定过去一定有人做过.

理论上我想做的很简单(我想!)

基本上我试图在 Field2 中重现 Field1 中的文本字符串,但所有字母字符都替换为单个字符,即 "x"。

例如:

字段 1 |字段 2

马克·坦迪 | xxxx xxxxx

基本上,我想隐藏 Field1 数据。 更好的是,我希望能够让每个单词的第一个字母不被遮挡,即

字段 1 |字段 2

马克·坦迪 | Mxxx Txxxx

可能有一个完美的简单解决方案(可能涉及自定义函数),我没有足够的横向思考来弄清楚。

我会继续努力,但如果有人有任何建议,我将不胜感激!

非常感谢,

马克

您可以使用自定义函数轻松解决此问题:

Public Function ObscureString(InputString As String) As String
    Dim SplitString() As String
    SplitString = Split(InputString, " ") 'Split words on spaces
    Dim SingleString As Variant
    For Each SingleString In SplitString
        If ObscureString <> "" Then ObscureString = ObscureString & " " 'Append space
        ObscureString = ObscureString & Left(SingleString, 1) 'Append first character
        If Len(SingleString) > 1 Then
            ObscureString = ObscureString & String(Len(SingleString) - 1, "x") 'x-es
        End If
    Next
End Function