Heim  >  Artikel  >  Backend-Entwicklung  >  求过滤alt的正则表达式

求过滤alt的正则表达式

WBOY
WBOYOriginal
2016-06-23 14:22:031357Durchsuche

正则表达式 php

求PHP过滤alt的正则表达式,alt有三种情况,要求都能过滤掉
alt="xxxxxxxxxxxx"
alt='xxxxxxxxxxxx'
alt=xxxxxxxxxxxx

要求能过滤掉以上三种情况的。


示例:
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式

……



要求能过滤各种情况,又不会过滤其它内容。谢谢。

回复讨论(解决方案)

$s =<<< TXT<img src="xxxx" alt="xxxxxxxxx" ><img alt="xxxxxxxx" src="xxxxxxxx"><img src="xxxxxx" alt=xxxxxxx ><img alt=xxxxxxxxxxx src="xxxxxxx"><img src='xxxx' alt='xxxxxxxxx' ><img alt='xxxxxxxx' src='xxxxxxxx'>TXT;echo preg_replace('/alt=([\'"]?).+?\b\1/is', '', $s);
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式

求PHP过滤alt的正则表达式,alt有三种情况,要求都能过滤掉
alt="xxxxxxxxxxxx"
alt='xxxxxxxxxxxx'
alt=xxxxxxxxxxxx

要求能过滤掉以上三种情况的。


示例:
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式

……



要求能过滤各种情况,又不会过滤其它内容。谢谢。
$str='求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式';
echo preg_replace('/(.*)(alt=[\"\']?.*?[\"\']?\s+)(.*)/', '$1$3', $str); 

$s =<<< TXT<img src="xxxx" alt="xxxxxxxxx" ><img alt="xxxxxxxx" src="xxxxxxxx"><img src="xxxxxx" alt=xxxxxxx ><img alt=xxxxxxxxxxx src="xxxxxxx"><img src='xxxx' alt='xxxxxxxxx' ><img alt='xxxxxxxx' src='xxxxxxxx'>TXT;echo preg_replace('/alt=([\'"]?).+?\b\1/is', '', $s);
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式

你提供的方法可能只适合我在上面写的例子,我给个实际的的内容,就知道过滤出有问题了。
<P align=center><img alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243OF-12228.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243Y40-29608.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243c60-33252.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332440Y0-410N.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332441P-53227.jpg" border=0><BR><BR><img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332442M0-62002.jpg" border=0>  <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332443L0-N248.jpg" border=0>  <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332444I0-X239.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332445F-953E.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33244C30-105E1.jpg" border=0></P>


求PHP过滤alt的正则表达式,alt有三种情况,要求都能过滤掉
alt="xxxxxxxxxxxx"
alt='xxxxxxxxxxxx'
alt=xxxxxxxxxxxx

要求能过滤掉以上三种情况的。


示例:
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式

……



要求能过滤各种情况,又不会过滤其它内容。谢谢。
$str='求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式';
echo preg_replace('/(.*)(alt=[\"\']?.*?[\"\']?\s+)(.*)/', '$1$3', $str); 

你提供的方法可能只适合我在上面写的例子,我给个实际的的内容,就知道过滤出有问题了。

<P align=center><img alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243OF-12228.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243Y40-29608.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243c60-33252.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332440Y0-410N.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332441P-53227.jpg" border=0><BR><BR><img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332442M0-62002.jpg" border=0>  <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332443L0-N248.jpg" border=0>  <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332444I0-X239.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332445F-953E.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33244C30-105E1.jpg" border=0></P>

我知道我那个正则有点问题,加那个 \b 是不得已而为之
不过既然能满足你示例的数据,那也就可以了。
你总不能让我去罗列一起可能出现的情况吧?那要你干什么呢?

$s =<<< TXT<P align=center><img alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243OF-12228.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243Y40-29608.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243c60-33252.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332440Y0-410N.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332441P-53227.jpg" border=0><BR><BR><img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332442M0-62002.jpg" border=0>  <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332443L0-N248.jpg" border=0>  <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332444I0-X239.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332445F-953E.jpg" border=0>   <img  src="/uploads/allimg/c100508/12I33244C30-105E1.jpg" border=0 alt=如果QQ我是你></P>TXT;echo preg_replace('/alt=([\'"]?).+?\1(\s|>)/is', '$2', $s);

求过滤alt的正则表达式
   求过滤alt的正则表达式
   求过滤alt的正则表达式
   求过滤alt的正则表达式
   求过滤alt的正则表达式


求过滤alt的正则表达式
  求过滤alt的正则表达式
  求过滤alt的正则表达式
   求过滤alt的正则表达式
   求过滤alt的正则表达式




求PHP过滤alt的正则表达式,alt有三种情况,要求都能过滤掉
alt="xxxxxxxxxxxx"
alt='xxxxxxxxxxxx'
alt=xxxxxxxxxxxx

要求能过滤掉以上三种情况的。


示例:
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式

……



要求能过滤各种情况,又不会过滤其它内容。谢谢。
$str='求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式
求过滤alt的正则表达式';
echo preg_replace('/(.*)(alt=[\"\']?.*?[\"\']?\s+)(.*)/', '$1$3', $str); 

你提供的方法可能只适合我在上面写的例子,我给个实际的的内容,就知道过滤出有问题了。

<P align=center><img alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243OF-12228.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243Y40-29608.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33243c60-33252.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332440Y0-410N.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332441P-53227.jpg" border=0><BR><BR><img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332442M0-62002.jpg" border=0>  <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332443L0-N248.jpg" border=0>  <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332444I0-X239.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I332445F-953E.jpg" border=0>   <img  alt=如果QQ我是你 src="/uploads/allimg/c100508/12I33244C30-105E1.jpg" border=0></P>

你到底测试我的了没有呢?

$str=

求过滤alt的正则表达式
   求过滤alt的正则表达式
   求过滤alt的正则表达式
   求过滤alt的正则表达式
   求过滤alt的正则表达式


求过滤alt的正则表达式
  求过滤alt的正则表达式
  求过滤alt的正则表达式
   求过滤alt的正则表达式
   求过滤alt的正则表达式


TXT;
echo preg_replace('/(.*?)(alt=["\']?.*?["\']?)(\s+|>)/', '$1$3', $str); 
忘记靠在后面没有空格的情况了,加上允许在最后没有空格的境况就可以了

非常感谢两位!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn