匹配垂直斜线

本文关键字:垂直 | 更新日期: 2023-09-27 18:24:52

如何在正则表达式中匹配垂直斜杠|

我尝试将类似"1|2|3|4|"的内容与此正则表达式相匹配
"(<group1>.*?)|.*?|.*?|(<group2>.*?)|

我想得到第一组值1和第二组值4这个正则表达式不起作用

匹配垂直斜线

除了Romoku的答案外,如果您不想使用Regex.Escape ,您还可以执行其他两个答案中的一个

// double backslash "''" to escape the ' in c# so it gets passed to regex
"(<group1>.*?)''|.*?|.*?|(<group2>.*?)|"
// use the @ sign to indicate to c# to take text verbatim
@"(<group1>.*?)'|.*?|.*?|(<group2>.*?)|"

您所拥有的一切都很接近,只需去掉问号即可。星号匹配0或更多,因此不需要打问号。

''转义符|。你少了几个后斜线。应该是这样的:

(<group1>.*)'|.*'|.*'|(<group2>.*)'|

您需要在C#的字符串声明前面添加@符号来获取文本。

@"backslash'all day"