置き換えられる/取り除かれる正規表現(PHP)は何ですか(preg_replace()
を使用します)。ここで置換されていないSTARTが先行されていない場合、置換/削除する正規表現は何でしょうか?
は私がより良い何を意味するか描写するいくつかの例は以下のとおりです。
例1:
入力:
sometext....END
出力:
sometext.... //because theres no START, therefore no need for the excess END
例2:
入力:
STARTsometext....END
出力:
STARTsometext....END //because its preceded by a START
例3:
入力:
STARTsometext....END.......END
出力:
STARTsometext....END....... //because the END is not preceded by a START
が誰かを助けることができることを望ん?
ありがとうございます。
パーサーが必要な場合は、パーサーを作成する必要があります。 –
ネストされた区切り文字のレベル(括弧、括弧、開始/終了など)を認識しなければならない場合は、解析ライブラリを使用するか、通常のプッシュダウンオートマトンを使用することを検討してください表現。あなたのプラットフォームの正規表現ライブラリがこれを可能にする拡張をサポートしていても、その解決法は壊れやすく、維持するのが難しいでしょう。 –
私は余分なENDを修正する小さな正規表現のパーサを探しているわけではありません。私の正規表現のスキルは限られていますが、私はそれを取り替えるためにSTARTによって進められなかったかどうかをどうやって確認するのか分かりません。 – Newbtophp