[英]Replace [url=URL] regex
寻找一种删除任何文字的方法
[url=]
那将很容易,但是url本身是我无法控制的URL。
例如或网址:
[url = wqffqwfq] [url = qwfwqfqf]
等等
寻找替代物,目前有:
$post_text = preg_replace('%\[URL[^\]]*\][^\[\]]*|\[/URL[^\]]*\]%i', '', $post_text);
但这会删除网址后面的图片。
谢谢。
我认为您使用了太多转义字符。 但是,您可以使用惰性捕获组:
$string = '[foo] buz [url=wqffqwfq] qux [bar] foobar [url=qwfwqfqf] faq';
$pattern = '/\[url=(.*?)\]/i';
$replace = '';
$string = preg_replace($pattern,$replace,$string);
//$string = '[foo] buz qux [bar] foobar faq';
如果赋值( =
)字符是可选的,则可以使用/\\[url(.*?)\\]/i
模式。
信息: .*?
表示非贪婪的捕获:这表示.
是捕获,只要没有办法逃脱该小组。 从有可能的那一刻起,正则表达式机制就使该组脱离了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.