そのような文字列をパースする必要があります: "{data type="subject"}
PHP で正規表現を使用します。私はこれを持っています:
$template = '/{([\w]+)\s([\w]+)="([\w]+)"}/';
しかし、何も起こりません。
誰でもそれで私を助けることができますか?
すべてがうまく見えます。
あなたのパターン:
<?php
$s = '{data type="subject"}';
$template = '/{([\w]+)\s([\w]+)="([\w]+)"}/';
preg_match($template, $s, $matches);
var_dump($matches);
結果は次のとおりです。
array(4) {
[0] =>
string(21) "{data type="subject"}"
[1] =>
string(4) "data"
[2] =>
string(4) "type"
[3] =>
string(7) "subject"
}
完全な例を示してください。
中括弧はエスケープする必要があります。このようなことを試してください:
'/\{(\w+)\s(\w+)="(\w+)"\}/'
編集:少し間違いを変更しました。私はそれを試しました、それはうまくいきます。