伙计们,这是一个简单的问题。我正在尝试创建一个模式以在 C# 中与正则表达式一起使用。
这是我的尝试:
"(value\":\[\[\"([A-Za-z0-9]+(?:-{0,1})[A-Za-z0-9]+)\"\]\])"
但是由于某种原因,当我去编译它时,我在括号中得到了“无法识别的转义序列”。我不能简单地使用\来转义括号吗?
我正在搜索的字符串的形式为
value":[["AB-AB"]]
或
value":[["ABAB"]]
我想从结果中获取 group[1]。
请您参考如下方法:
默认情况下,C# 编译器不允许它无法识别的转义序列。您可以像这样使用“@”来覆盖此行为:
@"(value\"":\[\[\""([A-Za-z0-9]+(?:-{0,1})[A-Za-z0-9]+)\""\]\])"
编辑:
@ 符号比这复杂一点。引用@Guffa:
A @ delimited string simply doesn't use backslash for escape sequences.
此外,应该注意的是,在这样的字符串中 \" 的替换是 ""
