我试图从MS Access中的文本字段中删除各种单词。数据可能如下所示:
你好@foo,是什么新的@bar @goodfriend和我刚观看星球大战 @this和@that以及@theother
我想删除所有以' @'。
开头的字词替换()不会起作用,因为每个记录中的单词都不同。
有什么想法吗?
答案 0 :(得分:1)
如果您正在使用VBA,则应该能够基于正则表达式替换文本。请参阅replace a column using regex in ms access 2010的答案作为示例。
答案 1 :(得分:0)
我实际上赞成了CheeseInPosition的答案,但我想如果你不能/不想用正则表达式做的话我会提供另一种方法。刚写了一个快速函数来解析单词:
Public Function RemoveAtWords(strOriginal As String) As String
Dim strParts() As String
Dim i As Integer
strParts() = Split(strOriginal, " ")
For i = LBound(strParts) To UBound(strParts)
If Left(strParts(i), 1) <> "@" Then
RemoveAtWords = RemoveAtWords & " " & strParts(i)
End If
Next
RemoveAtWords = Trim(RemoveAtWords)
End Function
您可以从查询中调用它并传递您的字符串。效率不高,因为你必须遍历整个字符串,但只是另一种选择。