C#Regex Escape序列

mpe*_*pen 11 c# regex

在某处有完整的正则表达式转义序列表吗?我发现这个,但它是缺失\\\e对于初学者.到目前为止,我已经提出了这个正则表达式模式,希望匹配所有的转义序列:

 @"\\([bBdDfnreasStvwWnAZG\\]|x[A-Z0-9]{2}|u[A-Z0-9]{4}|\d{1,3}|k<\w+>)"
Run Code Online (Sandbox Code Playgroud)

VVS*_*VVS 25

或者,如果您只想正确地转义字符串,您可以依赖于Regex.Escape()哪个将为您执行必要的转义.

提示:还有一个 Regex.Unescape()


Jon*_*eet 6

这个MSDN页面(正则表达式语言元素)是一个很好的起点,这个子页面专门关于转义序列.


Luk*_*keH 5

不要忘了可能的Unicode类别不计其数:\p{Lu},\P{Sm}等等.

有太多这些可供你单独匹配,但我想你可以使用\\[pP]\{[A-Za-z0-9 \-_]+?\}(未经测试的)一些东西.

还有还有通过您的列表中缺少的东西简单:\.,\+,\*,\?等等等等.

如果你只是试图浏览现有的正则表达式,那么你可以试试Regex.Unescape.它并不完美,但它可能比你或我在短时间内敲响的任何东西都要好.