2

次のような文字列があります。

<label>value1<label>:value<br>
<label>value2<label>:value<br>
<label>value3<label>:value<br>

そして私はこれを次のように整理する必要があります

 <li><label>value1<label><span>value</span><li>

私はこの2日間試してみましたが、運がありません。何か助けはありますか?

4

2 に答える 2

0

これは、正規表現で行うべきことではありません。解析しているコンテンツについて多くの仮定を立てていれば、機能するソリューションをごちゃ混ぜにすることができるかもしれませんが、そのコンテンツが予想から大幅に逸脱した場合、それは常に壊れやすく、壊れやすいものです。

PHP のDOM ファミリのクラスを使用することをお勧めします。私は実際にあなたのためにコードを書く自由はありません (とにかくそれは SO の目的ではありません) が、あなたが従わなければならない手順に関するポインタを与えることができます.

  1. ラベルに続き、BR の前にあるテキスト ノードを見つけます (ここでは XPath が役立つ場合があります)。
  2. テキスト ノードをスパンに配置します。
  3. ラベルの後にスパンをDOMに挿入します
  4. BRを取り外します。
  5. ラベルを包み、リーでスパンする
于 2012-11-19T09:27:32.463 に答える