2012-01-03 4 views

答えて

1

ご入力の上にループを持つ:

"([^\\"]*(?:\\.[^\\"]*)*)" 

と最初のグループをキャプチャします。

この構文は、埋め込み引用符と空の文字列を処理します。空の文字列を必要としない場合は、最初の*+に置き換えます。

はPHPで、これはpreg_match_allを使用して行われます:あなたの文字列が埋め込まれた引用符を持っていない場合、あなたは、単に"(.*?)"を使用することができ

preg_match_all('/"([^"]*(?:\\"[^"]*)*)"/', "input here", $matches); 
# use the $matches array 
+0

私はforeachで扱うことができる配列として使いたいと思います。 – user998163

+1

編集を参照してください、あなたは自分で見つけたかもしれません;)Google検索の30秒がかかりましたが、PHPは分かりません。 – fge

0

。もしそうであれば、それはあなたがそれらを引用する方法に依存しますが、"(([^"\\]|\\.)*)"は、"\"\\"のようなバックスラッシュで引用された文字列を扱います。 (注:2番目の正規表現のバックスラッシュを除いて、これらの文字列はすべて引用符で囲まれていません)

関連する問題