繁体   English   中英

如何将可选单词与RegEx匹配,而不使用反向引用?

[英]How can I match an optional word with RegEx and not use backreferences?

我对反向引用和可选字符串的冲突本质有些困惑。

假设我要查找一个URL,并且可以选择在前面有http://,那么我愿意(http:\\/\\/)...对吗? 但这不会创建我可以使用\\ 1或$ 1或任何其他方式访问的反向引用吗?

因此,您需要一个非捕获子模式

(?:http:\/\/)
 ^^

另外,我建议您更改定界符,这样就不必转义所有斜杠,例如:

preg_replace('@(?:http://)@', ...)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM