1

私は自分のページに簡単なパーサーをいくつか作成しましたが、問題があります。

HTMLテキスト:

<p>some text</p><p>another text</p>

私が次のようなものを使おうとすると:

preg_split("#<p>#",$string);

なしで結果が出ましたが<p>、これは非常に悪いです。(</p>存在するだけ)

たぶん私はこの文字列を配列に分割することができますが、削除しないでください</p>

4

2 に答える 2

4

ポジティブルックアヘッドゼロ幅アサーション(?=<p>)であるこの構成を使用できます。このパターンは、一致するテキストを消費しません。文字列の前の位置を見つけるだけです。次に例を示します。<p>

preg_split("#(?=<p>)#",$string);
于 2009-10-15T14:36:17.450 に答える
1

Ivanが言ったように、を使用する必要があります(?=<p>)。使用できることを追加したかっただけです

var $Paragraphs = array_filter(preg_split("/(?=<p>)/", "<p>some text</p><p>another text</p>"));

どっちが:

[1] => <p>some text</p>
[2] => <p>another text</p>
于 2009-10-15T14:55:03.540 に答える