dポイントプレゼントキャンペーン実施中!

正規表現を教えてください。

C#で正規表現を用いた文字列検索を勉強中なのですが、うまくマッチさせることができません。教えていただけないでしょうか。

検索対象の文字列は下のようになります。

キーワード;値;

文字列中に該当するキーワードが存在する場合に、その値を取得するプログラムを考えています。しかし、私の正規表現では2つ目の「;」を検出してしまい、キーワードのみを取得することが出来ずに困っています。

見当違いの表記をしているとは思うのですがどなたかお助けください。

match = Regex.Match(line, "^(.*);");




C#初心者なものです。

A 回答 (1件)

文字列マッチングのデフォルトは最長一致なので、その結果は合ってます。


ご希望は最短一致のようなので、
match = Regex.Match(line, "^(.*?);");
で、match.Groups[1].Valueかなあ?

参考URL:http://php-web.net/regular/matching.html
    • good
    • 0
この回答へのお礼

かなり悩んでいたので助かりました。

魔法のキーワード「?」をもっと調べてみます。
ありがとうございました。

お礼日時:2010/05/28 14:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!