2009-09-02 16 views
1

私はいくつかの正規表現の問題について助けが必要です。まず、二重引用符"正規表現の問題

""の間に一致する必要があります。次の問題\nまたは<br />の最後まで'で始まるものと一致させる必要があります。

私はすべての種類を試しましたが、何もそれに見合うものはありません。何か案は?

申し訳ありませんが、&quot;&quot;の間に引用符が必要です。

+0

どの言語を使用していますか? – Nosrama

+0

マッチは複数行にする必要がありますか? – Nosrama

+1

PHPのマルチライン –

答えて

0

試してみてください。

二重引用符:

\&quot\;(.*?)\&quot\; 

シングルクォートラインや<br/>の終わりまで:からの引用符の間

\'(.*)(\<br|$) 
2

単純化した:それはあなたが使用することができますEOLへの単一引用符について、そのような

"Abc\"Def" 

としてエスケープされた二重引用符では動作しませんけれども

"[^"]*" 

は、二重引用符の間に何もマッチします

'.*$ 

更新: Sylv erdragは有効なポイントを作成しました。あなたが必要とする引用符を一致させるために

"([^"]*)" 

を取得してから、最初のサブグループを取得します。私は質問が&quot;が使用されるべきであることを言及するために更新されているのを見る - 私の答えはこれに容易に十分に適合させることができる。

+0

ああ、申し訳ありませんが、" –

+0

これも引用符に一致します。 – Sylverdrag

+0

「([^ "] *)」はデフォルトでは欲張りです。「([^」] *?)" – Sylverdrag

0

/"(.*)"/ 

"二重引用符ではなく二重引用符自身の内側にあるものだけをもう少しファンキーと一致取得するには

/&quot;(.*?)&quot;/s 
/'.*?(?=\n|<br \/>)/m 
0

の終わりまでこれらの正規表現を試してみてください

(?<=").*?(?=") 
0

:ライン

/'(.*)$/ 
+0

私は自分の更新した方法回答。 –

+0

十分に公正ですが、それを不公平にするか、いくつかの驚きがあるかもしれません。 – Sylverdrag