2011-05-27 3 views
0

私は正規表現の周りを頭で囲んでいますが、正規表現の専門家が助けてくれることを期待しています。Regex:複数の行に括弧で囲まれた "キー"の値を見つける

ここでは、達成しようとしている問題の例を簡単に説明します。 私はこのようにやや見える私が探しています、キーと値を持つ入力文字列、持っている:

  • G01 ::注意事項((顧客がすでに存在している))
  • G01 :: MyNoticeを((顧客はすでにG02
  • ))...用事、存在:: OrderConfirm((注文が確認済みされています! 彼の命令はすぐに到着する顧客に通知してください。))上記の例では

、私はG01のためにすべてを取得したいと思う::これは同封されるエンテス。だから私のパターンは3つの入力文字列を見ると、私はいくつかの注意事項を追加する必要があり

です:

答えて

0

ない完全な質問を、どのようにこの1について? rubular

0

G01.*\(\((.*)\)\)

.*\((.*?)\) 

Result 1 
The customer already exists 

Result 2 
The customer already exists, nevermind... 

Result 3 
The order has been comfirmed! Please inform the customer that his orders will arrive soon. 

(私はあなたの質問を誤解していない限り)動作するようです。

1

私は

が、それはあなたが望むこれは...あなたの質問が完了したかどうかわかりませんか?

G01::[^(]*\(\(([^)]*) 

Regexrでここを参照してください。角括弧内のテキストはキャプチャグループ1にあります。

1

G01::\w+ \(\((.*?)\)\)

この正規表現を試してください。
関連する問題