この前のquestionの直後に、PHPを使用してテキスト(および可能であれば中カッコ)を一致させるにはどうすればよいですか?PHPの中括弧間のテキストの一致
具体的には、私はWordpressプラグインを作成していて、2つの中括弧の間のすべてのテキストを再フォーマットしようとしています(擬似ウィキマーク)。
私は尋ねた、とマッチング一部の作業を持っている別の以前のquestionで説明した手順に従ってきた - それは私が助けを必要と試合です。
例:
This is some {{text}} and I want to reformat the items inside the curly braces
所望の出力:
This is some *Text fancified* and I want to reformat the items inside the curly braces
私が持っているもの(つまりないが働いている):
$content = preg_replace('#\b\{\{`.+`\}\}\b#', "<strong>$0</strong>", $content);
もし一致かっこをされるなど、あまりにも難しい、私はmatcすることができますhを中括弧をオフセットとして使用し、その後、より単純なテキストマッチ機能を使用して、後に「不快な」中括弧も削除します。
これは完璧に機能しました - ありがとう...今:なぜそれは機能しますか? – warren
あなたは '{something}'を変更する必要があるので、 '{'と '}'を入れて、 '(。*)'でそれらの中身を取得する必要がありますが、 {{または}] =^[{|}]のようなものです。私は事を説明するのに吸います、私の上司は仕事が終わる限り気にしません... –
'[^ {|}]'は '[^ {}]'でなければなりません。文字クラスに "or"演算子は必要ないので、 '|'は特別な意味を失い、単に '|'にマッチします。 –