1
$string = ' prepending string ... "{something wrapped with " quotes } inside of braces}" appending string...';
$string .= '"{something "similar again{}}"';

この文字列でラップされたスライス'"{*}"'を preg_match と一致させる必要があり、解決策が見つかりません。

次のような 1 つの区切り記号を一致させるのは簡単です'/([^"]+)/'が、2 つの記号の文字列には役に立ちません。たとえば、これは機能していません: '/"\{([^(\}")]+)\}"/'.

文字列内の記号のペアでラップされたこれらすべてのスライスを一致させることは可能ですか?

4

1 に答える 1

0

ここで貪欲でないパターンを使用したいと思います:

$pattern = '/"\{(.*)\}"/U';

一致が行われるために、それを確認する必要があるのか​​ 、"それとも{}外部構造内に存在する必要があるのか​​ は不明です。"{*}"もしそうなら、私に知らせてください、そして私は答えを修正します。

于 2013-03-07T18:56:15.603 に答える