1 。在入门处。
\b是正则表达式规定的一个特殊代码(好吧,某些人叫它元字符,metacharacter),代表着单词的开头或结尾,也就是单词的分界处。虽然通常英文的单词是由空格,标点符号或者换行来分隔的,但是\b并不匹配这些单词分隔字符中的任何一个,它只匹配一个位置。
我编写的一个程序是:
string pattern1 = @"\bhi\b.*\bLucy\b";
string str = "hi,fdjkfdjk Lucy fjdk hiLucy";
foreach (Match match in Regex.Matches(str, pattern1, RegexOptions.IgnoreCase))
{
Console.WriteLine(match.Value + ":" + match.Index + ":" + match.Length);
}
Console.ReadLine();
若模式为\bhi\b.*时,若要得到匹配的话,hi后面必须跟空格,标点符号,换行符。这样才能匹配。
如果 要匹配的字符串为hifdjkdjfkd Lucy 这样就匹配不了了。