C#Regex Escape序列
在某处有完整的正则表达式转义序列表吗? 我找到了这个 ,但是对于初学者来说它缺少\\
和\e
。 到目前为止,我已经提出了这个正则表达式模式,希望匹配所有的转义序列:
@"\\([bBdDfnreasStvwWnAZG\\]|x[A-Z0-9]{2}|u[A-Z0-9]{4}|\d{1,3}|k)"
或者,如果您只想正确地转义字符串,您可以依赖Regex.Escape()
,它将为您执行必要的转义。
提示:还有一个Regex.Unescape()
这个MSDN页面 (正则表达式语言元素)是一个很好的起点, 这个子页面专门关于转义序列。
不要忘记可能的unicode类别: \p{Lu}
, \P{Sm}
等。
有太多这些可供你单独匹配,但我想你可以使用符合\\[pP]\{[A-Za-z0-9 \-_]+?\}
(未经测试)的内容。
还有你的清单中缺少的更简单的东西: \.
, \+
, \*
, \?
等等
如果您只是想尝试使用现有的正则表达式,那么您可以尝试使用Regex.Unescape
。 它并不完美,但它可能比你或我在短时间内可以敲击的任何东西都要好。