字段包含以下值:{“93”:“尺寸:< / span> XL< / span>”}。我想只显示尺寸:XL。我尝试过使用strip_tag函数但是没有成功。有什么建议吗?
答案 0 :(得分:2)
试试这个,
它的json编码值。
$text = '{"93":" Size:</span>XL</span>"}';
$ar = json_decode($text);
foreach($ar as $value){
echo strip_tags($value);
}
输出
Size:XL
希望它固定..
答案 1 :(得分:0)
如果您的代码是正确的,请执行以下操作:
<span>XL</span>
代替</span>XL</span>
,
strip_tags()
应该适合你。
我通过以下测试验证了......
$text = "<span>XL</span>";
$goodtext = strip_tags($text);
输出结果......
echo htmlentities($text)
echo "<br/>";
echo htmlentities($goodtext);
...墓内
<span>XL</span>
XL
答案 2 :(得分:0)
您的问题有点不清楚,如果该字段包含所有内容,包括{括号,则替换中的此正则表达式应该有帮助,只需用空字符串替换字符:
/"\:"|[^A-Za-z:]|span/g
如果情况并非如此,并且您只有第二个带有跨度的字符串,则可以使用此字符串:
/[^A-Za-z:]|span/g
但要注意,它也会删除空格,仅适用于特定情况,例如。不删除其他标签等。
答案 3 :(得分:0)
您可以使用函数preg_match_all
应用全局正则表达式匹配,仅从您的字段中提取“大小:XX”。
$field = "your data fields"
$pattern = "/(Size:)<\/span>([a-z]{1,2})<\/span>/i";
preg_match_all($pattern,$field,$result,PREG_SET_ORDER);
foreach( $result as $r ) {
print($r[1]." ".$r[2].PHP_EOL);
}
将输出:
Size: XL
Size: L
...