2011-07-29 17 views
2

これは本当に基本的な場合私は正規表現に新しいですので、私を許してください。私はsomething "some item" something "another item"のような文字列と、式:".*"を持っています。私がそれを実行するとき、私は"some item" something "another item"を得るが、本当にすべて私はそれを望む"another item"。これを行うために式を変更することは可能ですか?それはRegExKit経由で使用されます。正規表現最後の項目を取得

おかげ

+0

正規表現を使用しているプログラミング言語を指定してください。 –

+1

「他のアイテム」と「何か」という別のアイテム「とは区別されますか? 2番目に引用された部分文字列を探していますか? – Cameron

+0

何個あるかにかかわらず最後に引用された部分文字列を探しています。 – nosedive25

答えて

2

はあなたが提供してきました、単一の例に基づいて、これは動作します:

("[^"]*")$ 

それは入力の終わりに、引用符を含む二重引用符のペア間のすべてを、一致しました。何がいくつあっても、最後の引用符で囲まれた部分文字列を探していません


イム。

この場合、上記は必ずしもあなたが望むものではありません。これを試してみてください:

.*("[^"]*") 

.*部分の説明については@mhyfrtiz' answerを参照してください。

+0

すごくうまくいった!本当にありがとう – nosedive25

0
"[^"]*"$ 

は、JavaScriptを含むほとんどの言語で機能します。

0

これは

.*"(.*)" 

これは最初の.*は、テキスト全体を消費しますので、*数量詞は、貪欲であるという事実を利用するに動作します。その後、正規表現エンジンは、文字列内で最後に現れる".*"が一致するまで、バックトラックする(すなわち、最後から逆方向に文字列をトラバースする)。

関連する問題