我想在我的字符串中找到以下文字:'***'
问题是C#Regex机制不允许我执行以下操作:
new Regex("***", RegexOptions.CultureInvariant | RegexOptions.Compiled);
由于
ArgumentException:“解析” * “ - 量词{x,y}无效。”
显然它认为我的星星代表正则表达式, 有没有办法告诉正则表达式机制将星星视为星星而不是别的?
答案 0 :(得分:12)
您需要使用反斜杠逃避明星:@"\*"
答案 1 :(得分:11)
*
中的 Regex
表示:
匹配前一个元素零次或多次。
因此,您需要使用\*
或[*]
。
解释
的
\
强> 的如果在本主题的此表和其他表中后面跟未被识别为转义字符的字符匹配,则匹配该字符。例如,
\*
与\x2A
相同。的
[ character_group ]
强> 的匹配
character_group
中的任何单个字符。