0

交換方法

<option value="X"   >XXX</option>
<option value="Y"   >YYY</option>
<option value="ZZ"   >ZZZ</option>

すべてのオプションタグを置き換えたいので、以下のように印刷する必要があります

"XXX" "YYY" "ZZZ" .... 

パターンに慣れていない。助けて

4

2 に答える 2

1

入力が常にこの形式であることがわかっている場合は、もちろん正規表現で行うことができます。例えば

<?php
$pattern = '/<\/?option[^>]*>\n?/';
$replacement = '"';
$subject = '<option value="X"   >XXX</option>
<option value="Y"   >YYY</option>
<option value="ZZ"   >ZZZ</option>';
$limit = -1;
$count = 0;
$result = preg_replace ($pattern, $replacement, $subject, $limit, $count);
?>

$result を出力すると出力されます

"XXX""YYY""ZZZ"

追加のスペースが必要な場合は、別の置換を実行して、すべて""" ".

すべての潜在的なダウン投票者へ。これについて独断的にならないでください。多くの場合、正規表現は必要なことを行い、実装が非常に簡単です。

于 2012-04-13T10:57:37.837 に答える
0

これはうまくいくはずです..

$output = preg_replace("~<option[^>]*?>([^<>]*?)</option[^>]*?>~","$1",trim($html));
于 2012-04-13T11:05:33.767 に答える