如何匹配符号“。”与正则表达式

时间:2013-05-29 12:04:48

标签: c# regex

我正在使用Windows窗体应用程序来搜索文件中的单词,但是我遇到了与符号“。”匹配的问题。 ,正则表达式的模式是从文本框设置的,但只要我输入“。”它匹配文件内容中的整个文本。我想只匹配符号“。”所以我该怎么做 ?

7 个答案:

答案 0 :(得分:7)

使用\

逃脱
Regex.Match(textBox.Text, @"\.");
  

“\”将下一个字符标记为特殊字符或转义文字。例如,“n”匹配字符“n”。 “\ n”匹配换行符。序列“\\”匹配“\”和“\(”匹配“(”。

Source

答案 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。