例如:
$str="<name>ABCDE<age>45";
我知道strip_tags
函数的使用,它删除了 sring 中的所有标签。但我只想剥离一个特定的标签来获得输出 "ABCDE<age>45";
可能吗?
例如:
$str="<name>ABCDE<age>45";
我知道strip_tags
函数的使用,它删除了 sring 中的所有标签。但我只想剥离一个特定的标签来获得输出 "ABCDE<age>45";
可能吗?
我已经解决了如下任务。感谢您提供所有有用的答案。
$str_arr==preg_split("/<[^>]+>/", $str, 0, PREG_SPLIT_NO_EMPTY);
输出:
$str_arr[0]=ABCDE
$str_arr[1]=45
您也可以通过strip_tags()
它从字符串中剥离 HTML 和 PHP 标记
// Allow <p> and <a>
echo strip_tags($str, '<p><a>');
$str="<name>ABCDE<age>45";
从您的评论 中是否有可能以“ABCDE”的形式出现?,是的,有可能这可以通过substr
或preg_match
echo substr($str,6,8); to get only ABCDE
或者
你可以这样做preg_match
$pattern = '/^ABCDE/';
preg_match($pattern, $str, $matches, PREG_OFFSET_CAPTURE, 5);
print_r($matches);
您可以在数组中设置要删除的标签,然后将其删除。例如:
$string = "<name>ABCDE<age>45";
$custom_tags = array('name');
$tags_length = sizeof($custom_tags);
for ($i = 0; $i < $tags_length; $i++) {
$string = str_replace("<" . $custom_tags[$i] . ">", "", $string);
}
字符串 strip_tags ( 字符串 $str [, 字符串 $allowable_tags ] )
如果你愿意,你可以允许一些标签:http: //php.net/manual/en/function.strip-tags.php。
可选参数[, string $allowable_tags ]可以解决您的问题吗?!