を使用してテキストを選び出す私はは正規表現
$text='remove1 \solution{keep1} remove2 \solution{keep2 inner{text}} remove3';
を持っており、
\solution{keep1}\solution{keep2 inner{text}}
を終了するにpreg_replaceを使用したい私はほとんど
$re = '/[^{}]*+(\{(?:[^{}]++|(?1))*\})[^{}]*+/';
$text = preg_replace($re, '$1', $text);
を使用してソリューションを持っている。しかし、これはありません\ソリューションを手前に置いてください。これをどうすれば解決できますか?
EDIT:\ solutionは、検索する固定文字列であることを意味し、他のすべてのテキスト部分は任意であることを意味します。
いただきました!あなたの予想される出力の考えを示しましたか? –
\ solution {keep1} \ solution {keep2 inner {text}}、上記の2番目のコード行。 – Geoff
あなたはいつも '\ solution {'で始まると思っていますか?この '\ solution {keep2 inner {text} keep3}'のように、ネストされた中括弧のペアの後にテキストがあってもかまいませんか? – Borodin