我使用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
答案 0 :(得分:6)
public static void Register(HttpConfiguration config)
{
config.EnableCors(new IkCorsPolicyProvider());
.....
// rest of the implementation (Routes, etc...)
}
(?<=\[[^]]*)\s
确保以下匹配的正面观察
(?<=\[[^]]*)
按字面意思匹配\[
[
匹配除[^]]*
以外的任何字符]
匹配任何空格字符如果您想在之后的某个时间确保\s
,那么您可以附加(?=[^[]*])
,但是,根据您的样本,我认为这不是必需的。< / p>
或者,您也可以将]
与\s(?=[^[]*])
修饰符一起用作this link节目。
替换为空字符串。
结果:Right to Left
答案 1 :(得分:0)
非常感谢ctwheels!你的答案很完美!
Public Function RemoveSpaceInFieldNames(ByVal expression As String) As String
Dim regex As RegularExpressions.Regex = New RegularExpressions.Regex("(?<=\[[^]]*)\s")
Return regex.Replace(expression, String.Empty)
End Function