2017-08-30 1 views
1

私は正規表現を使ってさまざまなフィールドからテキストを取り出すFiremonというアプリケーションを使用しています。私はそれが使用して正規表現の特定のバージョンが不明なので、私はドキュメントでこれへの参照を見つけることができません。正規表現を使用して特定の接頭辞に続くテキストを返すにはどうすればよいですか?

私の生のテキストは、常に次の形式になります:CMは常に整数であろう

CM: 12345 
APP: App Name 
BZU: Dept Name 
REQ: First Last 
JST: Text text text text. 

、JSTは、複数の行にまたがることができる文となり、他のフィールドは1から成る文字列であろう-2ワード - 各セクションの後にはいつもリターンがあります。

アプリケーションFiremonは、私はフィールドごとに正規表現のエントリを作成します。私は各値の後に戻ってくるので、各接頭辞を探して戻り値を返す単純なものが必要です。私は "BZU:\ s *(。*)"のようないくつかのバリエーションを試しましたが、動作するものを見つけることができません。

編集:私は各プレフィックスの後に値を取得しようとしています。 Firemonには、各フィールドのセクションがあります。 「APP」は例えばフィールドである。私は "APP:"を見つけてそれの後のテキストを返す正規表現の例が必要です。だから、 "APP:"を識別する正規表現のような単純なもので、:の後ろと戻りの前にすべてをつかむことはおそらくうまくいくでしょう。

+0

perl互換の場合は、 '\ s *'の代わりに '[\ s] *'を使うべきです。 '\ s'は文字クラスを参照しているので、角括弧内で使わなければなりません。=>' BZU:[\ s] *(。*) ' – Psi

+0

私ははっきり分かりませんでしたが、 '(?= \ w +)(。*)'を使用することができます – squareCircle

+0

申し訳ありませんが、より明確になっているはずです。上の例のテキストでは、 "App Name"や "First Last"などの接頭辞の後に値が必要です。 – fdefunct

答えて

1

あなたは試合グループからプレフィックスと空白文字を削除します(?=\w+)(.*)

肯定先読みを使用することができますし、各試合でのスペースの後にテキストを取得します。

+1

これを試して、働いたことがありますか? – jdmdevdotnet

+0

あなたは[チェック](http://regexr.com/3glsk) – squareCircle

+0

することができます私が頼んだ理由は、あなたがした場合はあなたのコメントにあなたの証拠を投稿する必要があります。私は答えを編集し、そのリンクを証拠のためにそこに投げます。私はあなたが(そうであると思われる)正しい答えxDを持っているので、あなたもアップアップします。 – jdmdevdotnet

関連する問題