HTMLを編集した後、またはより良いXHTMLやXMLでDOMを使用している場合。正規表現でそれをしようとするのはあまり良い考えではありません。
あなたは/正規表現を使用したい場合:あなたはTHERE
へHERE
から削除したい場合は
を、あなたはこれらのHERE A HERE B THERE C THERE
のような例を考えていますか?シンプルで貪欲でないマッチは、ここで内部を取り除くと "期待通り"に動作しませんが、C THERE
になります。
は基本的にあなたがしなければならない何トリックを行うとHERE A C THERE
を残す必要があるTHERE
を検索し、最初のHERE
のでs/(.*)HERE.*?THERE/\1/
(PCREの構文を使用して)を見つけるために左に行くことです。それを取り除くためにも繰り返します。ただし、これはすべての置換を置換するグローバル置換では機能しません。このような用途のためには、アルゴ:
while (found) {
find a first `THERE` and then go to left to find first `HERE` \
with regexps or without.
}
あなたの文字列には何も書いてありませんか?彼らはそこにいるはずですか、それとも '<'文字をエスケープするための努力ですか?あなたの質問を編集し、これを見てください:http://stackoverflow.com/editing-helpあなたの質問を正しくフォーマットする方法を見てください。 –
質問を改善してください。あなたが何を言いたいのか分かりません... –
@Bart私はこれらの要素を削除しました。元の "純粋な" HTMLタグ(したがって、Markdownのように解析されたもの)として書かれた所望の出力によって判断すると、私はOPが最初にその投稿全体を書いたと仮定し、タグを止めるために任意の文字を挿入しようとしていた解析される。改訂されたバージョンは、 ''の出力にも一貫しています。 –