Hen*_*son -1 php regex preg-replace
我有以下preg_replace()功能定位链接:
$link = preg_replace(
"#http://([\S]+?)#Uis", '<a href="http://\\1">(link)</a>',
$link
);
Run Code Online (Sandbox Code Playgroud)
它适用于http链接,但显然没有https链接.如何调整它以便它也适用于https链接.
只需添加s?后http并匹配整个链接,然后使用$0反向引用从替换模式是指它:
$link = preg_replace(
"#https?://\S+#i", '<a href="$0">(link)</a>',
$link
);
Run Code Online (Sandbox Code Playgroud)
请参阅PHP演示
细节:
https?- http或者https:// - 文字字符序列\S+ - 一个或多个非空白符号i - 不区分大小写的修饰符.注意U修饰符令人困惑(?将被写为??,并且模式变得更长),我建议删除它.
该s修改没有任何意义,如果图案不具有.的,因此它也是多余的,我建议删除这一点.
| 归档时间: |
|
| 查看次数: |
747 次 |
| 最近记录: |