php使用正则表达式获取字符串中的URL
发布时间 - 2026-01-10 22:11:12 点击率:次今天写一个问答系统上线之后发现有很多人发链接了,由于业务部门要我们过滤掉网站地址了,下面我给大家分享一个提取字符串url地址函数,代码如下:
$str ='本文实例讲述了php匹配字符串里所有URL地址的方法。http://www.manongjc.com 分享给大家供大家参考';
preg_match_all("/http:[\/]{2}[a-z]+[.]{1}[a-z\d\-]+[.]{1}[a-z\d]*[\/]*[A-Za-z\d]*[\/]*[A-Za-z\d]*/",$str,$array2);
print_r($array2);
运行结果为:
(
[0] => Array
(
[0] => http://www.manongjc.com
)
)
这里主要使用到preg_match_all函数,该函数具体使用方法如下:
preg_match_all — 进行全局正则表达式匹配
语法:
int preg_match_all ( string pattern, string subject, array matches [, int flags] )
在 subject 中搜索所有与 pattern 给出的正则表达式匹配的内容并将结果以 flags 指定的顺序放到 matches 中。
搜索到第一个匹配项之后,接下来的搜索从上一个匹配项末尾开始。
特别注意PREG_PATTERN_ORDER 和PREG_SET_ORDER
flags 可以是下列标记的组合(注意把 PREG_PATTERN_ORDER 和 PREG_SET_ORDER 合起来用没有意义):
如果使用PREG_PATTERN_ORDER
对结果排序使 $matches[0] 为全部模式匹配的数组,$matches[1] 为第一个括号中的子模式所匹配的字符串组成的数组,以此类推。(即$matches[0] [0]为全部模式匹配中的每一项,$matches[0] [1]为全部模式匹配中的第二项,$matches[1] [0]为匹配每一个括号中的第一项,$matches[1] [0]为匹配每一个括号中的第二项)
<?php
preg_match_all ("|<[^>]+>(.*)</[^>]+>|U","<b>example: </b><div align=left>this is a test</div>",$out, PREG_PATTERN_ORDER);
/* http://www.manongjc.com/article/1591.html */
print $out[0][0].", ".$out[0][1]."\n";
print $out[1][0].", ".$out[1][1]."\n";
?>
输出结果:
<b>example: </b>, <div align=left>this is a test</div> example: , this is a test
# php使用正则表达式获取字符串中的URL
# php使用正则表达式获取字符串中的URL实例详解
# PHP基于CURL发送JSON格式字符串的方法示例
# PHP使用http_build_query()构造URL字符串的方法
# php解析字符串里所有URL地址的方法
# php提取字符串中网站url地址的方法
# PHP安全的URL字符串base64编码和解码
# PHP检查URL包含特定字符串实例方法
# 第一个
# 有很多
# 以此类推
# 要我
# 给大家
# 并将
# 我给
# 正则表达式
# 到第
# 人发
# 来用
# 方法如下
# 每一项
# 业务部门
# 过滤掉
# 讲述了
# 第一项
# www
# Za
# preg_match_all
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
java ZXing生成二维码及条码实例分享
ChatGPT 4.0官网入口地址 ChatGPT在线体验官网
Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用
Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复
如何用AWS免费套餐快速搭建高效网站?
弹幕视频网站制作教程下载,弹幕视频网站是什么意思?
微信小程序 scroll-view组件实现列表页实例代码
Laravel如何实现文件上传和存储?(本地与S3配置)
如何快速搭建高效可靠的建站解决方案?
Laravel DB事务怎么使用_Laravel数据库事务回滚操作
在centOS 7安装mysql 5.7的详细教程
javascript中的数组方法有哪些_如何利用数组方法简化数据处理
Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】
如何在阿里云完成域名注册与建站?
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
晋江文学城电脑版官网 晋江文学城网页版直接进入
Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言
如何基于云服务器快速搭建个人网站?
如何在IIS7中新建站点?详细步骤解析
使用spring连接及操作mongodb3.0实例
Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】
PythonWeb开发入门教程_Flask快速构建Web应用
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
如何安全更换建站之星模板并保留数据?
网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?
如何在腾讯云免费申请建站?
javascript基于原型链的继承及call和apply函数用法分析
如何快速生成凡客建站的专业级图册?
Linux系统运维自动化项目教程_Ansible批量管理实战
Laravel如何生成API文档?(Swagger/OpenAPI教程)
Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】
高配服务器限时抢购:企业级配置与回收服务一站式优惠方案
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
大型企业网站制作流程,做网站需要注册公司吗?
网站制作免费,什么网站能看正片电影?
移动端脚本框架Hammer.js
HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】
Laravel如何使用Sanctum进行API认证?(SPA实战)
javascript读取文本节点方法小结
Laravel如何与Docker(Sail)协同开发?(环境搭建教程)
Bootstrap CSS布局之列表
如何实现建站之星域名转发设置?
,怎么在广州志愿者网站注册?
长沙企业网站制作哪家好,长沙水业集团官方网站?
在Oracle关闭情况下如何修改spfile的参数
html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】
JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)
Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法
悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音
香港服务器如何优化才能显著提升网站加载速度?

