如何使用php提取CDATA标签中的字符串? 比如我有
$str = "<![CDATA[this is my text]]>";
使用正则表达式如何提取字符串“这是我的文字”?
答案 0 :(得分:6)
您可以使用此正则表达式:/<!\[CDATA\[(.*?)\]\]>/
:
$str = "<![CDATA[this is my text]]>";
$matches = array();
preg_match('/<!\[CDATA\[(.*?)\]\]>/', $str, $matches);
echo $matches[1]; // this is my text
在遇到第一个<![CDATA[
之前,正则表达式会查找]]>
后跟任何字符。
答案 1 :(得分:2)
如果您的字符串始终以<![CDATA[
开头并以]]>
结尾,则可以使用substr()
$str = "<![CDATA[this is my text]]>";
$output = substr($str,9,strlen($str)-12);
echo $output;