我正在使用VB.NET编写Winforms应用程序,如何使用正则表达式删除字符串中“[”和“]”之间的空格?
例如,对于一个字符串
"[Product Name] Like '%Dragon Ball%' AND [Product Type] Like '%Toy%'"
我希望结果是
"[ProductName] Like '%Dragon Ball%' AND [ProductType] Like '%Toy%'"
我试过了,但是没有用:
Public Function RemoveSpaceInFieldNames(ByVal expression As String) As String
Dim regex As RegularExpressions.Regex = New
RegularExpressions.Regex(String.Format("\{0}\s*\{1}", "[", "]"))
Return regex.Replace(expression, String.Empty)
End Function
最佳答案
(?<=\[[^]]*)\s
(?<=\[[^]]*)
在确保以下匹配项后向后看\[
从字面上匹配[
[^]]*
匹配]
匹配任何空白字符如果您还想确保以后再有一个
\s
,则可以附加(?=[^[]*])
,但是根据您的示例,我认为这不是必需的。另外,您也可以将
]
与\s(?=[^[]*])
修饰符一起使用,如this link所示。替换为空字符串。
结果:
Right to Left