[英]Remove text between tags using a regular expression
How to remove text between br tags , using regexp 如何使用正则表达式删除br标签之间的文本
<br />var j=; var g=; g+=G;j+=30006;g+=a;g+=u;g+=l;g+=t;<br />
"var" and ";" “ var”和“;” is always exist, but other words and symbols may vary, something like this:
始终存在,但其他单词和符号可能会有所不同,如下所示:
<br />var e=; var x=; x+=tos;x+=ах,;<br />
etc... 等等...
these lines appear in random order: 这些行以随机顺序出现:
<br />Lorem ipsum dolor sit amet, consectetur adipiscing elit.<br />var j=; var g=; g+=G;j+=30006;g+=a;g+=u;g+=l;g+=t;<br /> Donec condimentum neque quis magna consectetur ut aliquam quam dictum. Fusce sed elit purus, lobortis tincidunt libero.<br />Nunc ultrices augue non augue tristique in aliquet urna adipiscing.<br /><br />var ... ;<br />
thanks! 谢谢!
The regexp you want would be 您想要的正则表达式将是
<br\s\/?>.*?var.*?;.*?<br\s\/?>
and just replace the output by <br /><br />
. 并将输出替换为
<br /><br />
。
If all you want is the output <br /><br />
, you don't need regular expressions: 如果只需要输出
<br /><br />
,则不需要正则表达式:
$result = "<br /><br />";
It's just a constant! 这只是一个常数!
如果<br />
元素的数量变化,则可以使用substr_count()
来计数<br />
元素,然后分别输出相同的数量。
If you have to do it for a whole text and by pairs of <br/>
you can do something like that : 如果您需要对整个文本并按
<br/>
对进行处理,则可以执行以下操作:
$str = 'test0 <br />var j=; var g=; g+=G;j+=30006;g+=a;g+=u;g+=l;g+=t;<br /> test1 <br /> test2';
$result = preg_replace('`<br */>.*?<br */>`s','<br/><br/>',$str);
var_dump($result);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.