fra*_*Xis 13 c# regex search replace
我有一个声明:
我有一个字符串,如
content = "* test *"
Run Code Online (Sandbox Code Playgroud)
我想搜索并替换它,所以当我完成时,字符串包含这个:
content = "(*) test (*)"
Run Code Online (Sandbox Code Playgroud)
我的代码是:
content = Regex.Replace(content, "*", "(*)");
Run Code Online (Sandbox Code Playgroud)
但这会导致C#中的错误,因为它认为*是正则表达式语法的一部分.
如何修改此代码,以便将字符串中的所有星号更改为(*)而不会导致运行时错误?
pol*_*nts 31
由于*是一个正则表达式元字符,当你需要它作为字符类定义之外的文字星号时,它需要转义\为\*.
在C#中,您可以将其写为"\\*"或@"\*".
C#还应该有一个通用的"引用"方法,以便您可以引用任意字符串并将其匹配为文字.
Kob*_*obi 10
在这个简单的场景中,您不需要正则表达式.您可以使用String.Replace:
content = content.Replace("*", "(*)");
Run Code Online (Sandbox Code Playgroud)