2014-05-06 80 views
0

我正在使用以下正則表達式在文檔中查找單詞和短語。 (有使用正則表達式,並必須使用\b。)帶有&號和空格的ASP.Net RegEx

\b (zoo|a & b|dummy)\b 

當我試圖找到匹配以下字符串

going to the zoo with a & b 

a & b沒有得到匹配。但是,如果我從字符串和正則表達式中刪除前導空間和後續空間,使兩個匹配,但我確實需要這些空間。

+0

你的正則表達式[比賽對我來說(http://regex101.com/r/zI8eJ1)。你的意思是'\ b a&b \ b'匹配'a&b',但是\ b a&b \ b'不是? – Robin

+0

編號\ b a&b \ b匹配a&b,但\ b a&b \ b與a&b不匹配。 – jsaunders

+0

這裏不匹配http://regex101.com/r/hU9zT9#pcre – jsaunders

回答

0

使用\ S的空間

string strRegex = @"\b\s(zoo|a\s&\sb|dummy)\b"; 
Regex myRegex = new Regex(strRegex, RegexOptions.None); 
string strTargetString = @"going to the zoo with a & b"; 

foreach (Match myMatch in myRegex.Matches(strTargetString)) 
{ 
    Console.WriteLine(myMatch); 
}