小编Dam*_*uez的帖子

preg_match_all - 在字符串中查找完整 url 的正则表达式

我花了 4 个多小时试图找到我的 php 代码的正则表达式模式,但没有运气。

我有一个带有 html 代码的字符串。它有很多网址格式,例如:

example.com
http://example.com
http://www.example.com
http://example.com/some.php
http://example.com/some.php?var1=1
http://example.com/some.php?var1=1&var2=2
etc.
Run Code Online (Sandbox Code Playgroud)

我有以下 php 代码部分工作:

preg_match_all('/\b(?:(?:https?|ftp|file):\/\/|www\.|ftp\.)[-A-Z0-9+&@#\/%=~_|$?!:,.]*[A-Z0-9+&@#\/%=~_|$]/i', $content, $result, PREG_PATTERN_ORDER);
Run Code Online (Sandbox Code Playgroud)

我唯一需要的是还使用“&”捕获具有多个查询字符串的 url 我得到它们,但不是完整的,我只收到如下内容:

http://example.com/asdad.php?var1=1&
Run Code Online (Sandbox Code Playgroud)

左边丢失了。

有人可以帮我将丢失的部分添加到模式中吗?

非常感谢。

php preg-match-all

5
推荐指数
1
解决办法
7649
查看次数

标签 统计

php ×1

preg-match-all ×1