替换[url = URL]正则表达式

寻找删除任何文本的方法</ p>

   [url =] 
</ code> </ pre>

这很容易,但网址本身就是我无法控制的网址。</ p>

例如或网址:</ p>

[url = wqffqwfq]
[url = qwfwqfqf] </ p>

等。</ p>

寻找preg替换,目前有这个:</ p>

  $ post_text = preg_replace('%\ [URL [^ ]] * ] [^ \ []]  * | \ [/ URL [^ ]] * ]%i','',$ post_text); 
</ code> </ pre>

但是会删除之后的图像 网址。</ p>

谢谢。</ p>
</ div>

展开原文

原文

looking for a way to remove any text that is

[url=]

That would be easy, but the url itself is a URL I dont have control of.

e.g or urls:

[url=wqffqwfq] [url=qwfwqfqf]

etc.

Looking for a preg replace, currently have this:

$post_text = preg_replace('%\[URL[^\]]*\][^\[\]]*|\[/URL[^\]]*\]%i', '', $post_text);

But that removes the image that comes after the url.

Thanks.

dourao1896
dourao1896 你能给我们一个最坏情况的例子,同时我认为你应该尝试@charlotteDunois所说的。
接近 6 年之前 回复
dqlm80253
dqlm80253 您也可以尝试“@(https?://([-\w\。]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\。\S])?)。*$)@“;.
接近 6 年之前 回复
dpf56454
dpf56454 你试过这个正则表达式“/[url(.*?)]/i”吗?
接近 6 年之前 回复

1个回答



我认为你使用了太多的转义字符。 但是你可以使用延迟捕获组:</ p>

  $ 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';
</ code> </ pre>

如果赋值( = </ code>)字符是可选的,那么你 可以使用 / \ [url(。*?)] / i </ code>模式。</ p>

信息:。*?</ code>表示 非贪婪捕获:这意味着。</ code>是捕获,只要没有办法逃脱该组。 从可能的那一刻起,正则表达式机制就会逃脱该组。</ p>
</ div>

展开原文

原文

I think you use too much escape characters. You can however use lazy capture groups:

$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';

If the assignment (=) character is optional, you can use the /\[url(.*?)\]/i pattern.

Information: .*? means a non-greedy capture: this means that . is captures, as long as there is no way to escape the group. From the moment it is possible, the regex mechanism escapes the group.

douhang1913
douhang1913 完美,非常感谢:)
接近 6 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐