1

誰かが私にその質問を指摘する前に、正規表現でhtmlを解析できないことを知っています:)そしてこれは私がやろうとしていることではありません。

私が必要なのは:

入力:htmlを含む文字列。出力:すべての開始タグを置き換えます

***<tag>

だから私が得るなら

<a><b><c></a></b></c>, I want

***<a>***<b>***<c></a></b></c>

出力として。

私は次のようなことを試しました:

(<[~/].+>)

と置き換えます

***$1

しかし、実際には私が望むようには機能していないようです。ポインタはありますか?

明確化:入力に自己終了タグやコメントがないことが保証されています。

4

2 に答える 2

2

2 つの問題^があり~ます。と.+は貪欲なので、最後の の前にできるだけ多くの文字に一致し>ます。次のように変更します。

(<[^/].+?>)

言語によっては、括弧を削除して$0またはに置き換えることもできます。$&

于 2012-06-21T01:01:21.517 に答える
1

使用してみてください:(<[^/].*?>)に置き換えてください***$1

于 2012-06-21T00:56:55.227 に答える