2011-07-04 9 views
-1

誰もが次の文字列を検索するために正規表現を形成するために私を助けることができる:C#の正規表現の質問

<b>The</b> <b>brown</b> <b>fox</b> jumped over the <b>lazy</b> <b>dog</b>. 

式が<b>lazy</b> <b>dog</b>に一致するように進み、その後<b>The</b> <b>brown</b> <b>fox</b>一つとして試合に一致する必要があります。この例では、式は2つの一致のみを返します。

+0

'VAR正規表現=新しい正規表現( "(茶色のキツネ|怠惰な犬)");'。どちらがあなたが完璧に望むものか、より多くの情報を提供する必要があります。 – Jon

+0

@FadeIMS、あなたは本当に学びたいのですか? Regexを理解して、個々のケースを尋ねるよりも独自の正規表現を書く方が良いのではないでしょうか? –

+0

HTMLの太字タグで単語を検索したいと思うかもしれません。 茶色の狐は、怠惰な犬を飛び越しましたか? – Arseny

答えて

2

これはあなたが探しているものですか?

Regex r = new Regex(@"<b>[^<]*</b>(?:\s*<b>[^<]*</b>)*"); 

String input = @"<b>The</b> <b>brown</b> <b>fox</b> jumped over the <b>lazy</b> <b>dog</b>."; 
foreach (Match m in r.Matches(input)) 
{ 
    Console.WriteLine(m.Value); 
} 

出力:

<b>The</b> <b>brown</b> <b>fox</b>
<b>lazy</b> <b>dog</b>

1

これはあなたの具体的な例で動作します:

@"The brown fox|lazy dog" 

をさらに、あなたはこれ以上簡単なフレーズを一致させる必要がある場合は、ちょうどこのパターンに|the simple phraseを追加します。

0
The brown fox|lazy dog 

上記は、入力から2つの一致を生成する正規表現です。

+0

申し訳ありませんが、質問にタグを含める方法がわかりません。私の元の質問には太字タグが含まれていました。誰も私にhtmlタグを含める方法を教えてもらえますか? – FadelMS