如何更换
<option value="X" >XXX</option>
<option value="Y" >YYY</option>
<option value="ZZ" >ZZZ</option>
我想替换所有选项标签,我需要打印如下
"XXX" "YYY" "ZZZ" ....
不熟悉模式。帮助我
答案 0 :(得分: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"
如果您想要额外的空格,可以运行另一个替换,并将所有""
替换为" "
。
对所有潜在的downvoters。对此不要教条。在许多情况下,正则表达式执行所需的操作,并且它们更容易实现。
答案 1 :(得分:0)
猜猜这应该有用..
$output = preg_replace("~<option[^>]*?>([^<>]*?)</option[^>]*?>~","$1",trim($html));