2011-10-27 5 views
0

私は正規表現の専門家ではありませんが、私は簡単な正規表現の作成方法を知っています。しかし、このタイプになると、どのように "SU"、 "RU"、 "IN"のような特定のテキストを検索しますか?ここではサンプルデータがあります:文字列に特定のキーワードを取得する

文字列は、このようなものです:

enter image description here

+0

である、あなたは何を試してみましたか? SU、RU、INのようなテキストをマッチングさせるのは難しいですか? –

+1

詳細を追加してください。画像としてではなく、テキストとしてのテキスト例。あなたの問題はどこですか?どのようなものに一致させたいのですか(あなたの結果はどういうものでしょう)、あなたの表現は実際にどのようなものに一致していますか? – stema

+0

その形式のために、その上のイメージは厳密には、作業中の文字列の構造です。問題は、私は特定の単語 "IN"を得たいと思っています。 – ivatanako

答えて

0

あなたは正確に単語「IN」ではなく「INPUT」を一致させたい場合、あなたは単語の境界を使用する必要があります。

\bIN\b 

ワード境界\bは非単語文字(他のすべての文字)に単語文字(すべての文字、数字、アンダースコア)からの変化と一致しました。

あなたがそれらの単語のリストを持っている場合は、(すでにワード境界と組み合わせ)のリストにそれらを置くことができ

\b(IN|SU|RU)\b 

この「IN」または「SU」または「RU」

のいずれかと一致します

この回答で問題が解決しなかった場合は、質問に詳細を追加してください。行からの詳細を取得するためにその可能性はもちろん

:のでコメントでリクエストの

。 (唯一の絵があるので)私はあなたが行は、「テストのようになります行

  • ことで、この行を読んでいると仮定し、私はあなたのデータに関するいくつかの仮定を作っています

    1. これを答えるために----- - ------- 0/0" IN
    2. 『テストが(これは作るために必要とされるRegexOptions.Multilineを使用してテスト『』あなたはそれから得ることができます行

    の先頭に直接あります』 ^は行の先頭に一致します)

    ^(\w+).*?\b(IN|SU|RU)\b 
    

    最初の単語は、グループ1をキャプチャしているキーワードは、グループ内の2

  • +0

    ありがとう!それは私の問題を解決する。もう1つのことは、どの識別子が見つかったかをどのように知っていますか? – ivatanako

    +0

    それは決してありません。それを得ました:) – ivatanako

    +0

    'm.group(1)'のような 'm'型の場合は、取得した文字列がキャプチャグループ1に格納されています。 – stema

    関連する問題