Php 如何忽略此正则表达式中的第一个匹配项 $tag='img'; $text=preg_replace(“#]*>#is”“,”$text);
如何使preg_replace忽略第一个匹配(“img”),并仅对其他匹配进行替换?您可以使用for()循环并将$I设置为1以避免数组中的第一个值,例如:Php 如何忽略此正则表达式中的第一个匹配项 $tag='img'; $text=preg_replace(“#]*>#is”“,”$text);,php,regex,string,Php,Regex,String,如何使preg_replace忽略第一个匹配(“img”),并仅对其他匹配进行替换?您可以使用for()循环并将$I设置为1以避免数组中的第一个值,例如: $tag = 'img'; $text = preg_replace('#</?'.$tag.'[^>]*>#is', '', $text); ($i=1;$tags
$tag = 'img';
$text = preg_replace('#</?'.$tag.'[^>]*>#is', '', $text);
($i=1;$tags{
$text=preg_replace('#]*>#is','',$text[$i]);
}
但是,如果要将=
符号保存为字符串,或者如果要将=
符号替换为=
,或者如果要使数组将$text
替换为$text[$i--]
请注意,此代码未经测试 在这种情况下,使用真正的HTML解析器是非常合适的…不要为此使用正则表达式,使用PHP DOM的东西。与问题相关:“和”“但是DOM的东西不起作用x(那么你到底为什么要标记为解决方案?!我很确定它会做你想做的,你只是还没有做到这一点。
for($i = 1; $tags < count($tags) ; $i++){
$text = preg_replace('#</?'.$tag.'[^>]*>#is', '', $text[$i]);
}