我正在使用Windows窗体应用程序来搜索文件中的单词,但是我遇到了与符号“。”匹配的问题。 ,正则表达式的模式是从文本框设置的,但只要我输入“。”它匹配文件内容中的整个文本。我想只匹配符号“。”所以我该怎么做 ?
答案 0 :(得分:7)
使用\
:
Regex.Match(textBox.Text, @"\.");
“\”将下一个字符标记为特殊字符或转义文字。例如,“n”匹配字符“n”。 “\ n”匹配换行符。序列“\\”匹配“\”和“\(”匹配“(”。
答案 1 :(得分:2)
在模式字符串中使用\.
。
答案 2 :(得分:1)
更一般地说,请致电string
上的Regex.Escape
。处理你忽略的其他情况。
虽然其他答案(到目前为止)解释了如何逃避"."
,但此方法将处理所有其他潜在障碍,例如转义字符"\"
本身。
答案 3 :(得分:0)
正则表达式使用'\'字符来允许特殊字符。
获取look at this以获取更多信息:
答案 4 :(得分:0)
在正则表达式'.'
中有一个特殊含义 - 匹配任何东西!尝试将其转义为表达式中的\.
。
MatchCollection match = Regex.Matches(entireText, @"alphabet\.");
答案 5 :(得分:0)
在正则表达式中,.
是与任何字符匹配的特殊字符。要匹配点,您应该使用反斜杠(\
)对其进行转义。其他保留字符也是如此,例如$
,(
,)
,[
,]
和^
。
因此,你的正则表达式应该是\.
,而不仅仅是.
。
答案 6 :(得分:0)
您可以使用 Regex.Escape(“。”),
试试这个,这可以用于所有其他符号的转义,如[,],\ etc。