Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $YECBGYFECGEAFWHA as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2

Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $BBWFDDBHHYHDXXAB as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2
PHP正则匹配函数_PHP preg_match等正则函数使用技巧_创想鸟

PHP正则匹配函数_PHP preg_match等正则函数使用技巧

答案:PHP中常用preg_match、preg_match_all、preg_replace和preg_split处理字符串;preg_match匹配首个结果,preg_match_all提取所有匹配项,preg_replace支持替换与回调,preg_split按正则分割字符串,合理使用可提升文本处理效率。

php正则匹配函数_php preg_match等正则函数使用技巧

在PHP中处理字符串时,正则表达式是极为强大的工具。常用的正则匹配函数包括 preg_match、preg_match_all、preg_replace 和 preg_split。掌握这些函数的使用技巧,能有效提升文本处理效率。

preg_match:匹配单个结果

该函数用于检查字符串中是否包含符合正则规则的内容,只返回第一个匹配项。

语法:

preg_match($pattern, $subject, &$matches)

$pattern:正则表达式,需用分隔符包裹(如 / 或 #) $subject:要搜索的字符串 $matches:可选参数,存储匹配结果的数组

示例:

立即学习“PHP免费学习笔记(深入)”;

if (preg_match(‘/d+/’, ‘订单号12345已发货’, $matches)) {
  echo “找到数字:” . $matches[0]; // 输出:12345
}

注意:即使字符串中有多个数字,也只返回第一个。

preg_match_all:获取全部匹配结果

当你需要提取所有符合规则的内容时,应使用 preg_match_all。

语法:

preg_match_all($pattern, $subject, &$matches)

与 preg_match 不同,它会遍历整个字符串,找出所有匹配项。

示例:提取所有邮箱

$text = “联系人:a@site.com 和 b@demo.org”;
preg_match_all(‘/[w-.]+@[w-.]+.w+/’, $text, $result);
print_r($result[0]); // 输出两个邮箱地址

返回结果中,$matches[0] 是完整匹配,如果有子组,则依次存入 $matches[1]、$matches[2] 等。

preg_replace:替换匹配内容

用于将匹配到的内容替换为指定字符串,支持回调函数,灵活性高。

语法:

preg_replace($pattern, $replacement, $subject)

示例:隐藏手机号中间四位

$phone = “13812345678”;
$hidden = preg_replace(‘/(d{3})d{4}(d{4})/’, ‘$1****$2’, $phone);
echo $hidden; // 输出:138****5678

也可使用回调:

preg_replace_callback(‘/d+/’, function($m) {
  return ‘[‘ . $m[0] . ‘]’;
}, ‘价格是100元和200元’); // 结果:价格是[100]元和[200]元

preg_split:用正则分割字符串

比普通 explode 更强大,支持复杂分隔规则。

示例:按多个空白字符分割

$str = “apple bananattcherrynn”;
$parts = preg_split(‘/s+/’, trim($str), -1, PREG_SPLIT_NO_EMPTY);
print_r($parts); // 得到三个水果名称

常用场景:拆分不规则格式的日志、标签或用户输入。

基本上就这些核心用法。关键是写对正则模式,注意分隔符和转义。合理使用这些函数,能让字符串处理更简洁高效。

以上就是PHP正则匹配函数_PHP preg_match等正则函数使用技巧的详细内容,更多请关注php中文网其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1325045.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
phpstorm配置php环境的内置服务器设置
上一篇 2025年12月12日 11:39:29
在Laravel中合并集合并对特定字段进行求和
下一篇 2025年12月12日 11:39:43

相关推荐

  • 黑莓iSpeech多国翻译工具

    黑莓iSpeech多国翻译工具黑莓iSpeech多国翻译工具黑莓iSpeech多国翻译工具黑莓iSpeech多国翻译工具

    还记得第一次掏出黑莓手机时,旁人疑惑地问:“这是一款电子词典吗?”不禁让人莞尔。事实上,凭借其优秀的物理键盘和流畅的操作体验,黑莓本就是理想的随身翻译工具。而ispeech_translator正是一款集翻译与词典于一体的多语言软件,专为提升移动沟通效率而生。这款免费在线应用功能全面、操作简单,安装…

    2026年9月25日 • 用户投稿
    200
  • Hadoop MapReduce实现累计电量数据的最大小时耗电量计算

    本文详细介绍了如何使用Hadoop MapReduce从累计电量读数中计算出所有住户和所有日期内的最大小时耗电量。教程将分析原始代码的问题,包括自定义Writable类的序列化错误和逻辑缺陷,并提供一个基于两阶段MapReduce任务的完整解决方案,涵盖自定义数据类型、Mapper、Reducer的…

    2026年9月25日
    000
  • Stable Diffusion精炼关键词公式:构图+主体+细节+风格+画质

    Stable Diffusion精炼关键词公式:构图+主体+细节+风格+画质Stable Diffusion精炼关键词公式:构图+主体+细节+风格+画质Stable Diffusion精炼关键词公式:构图+主体+细节+风格+画质Stable Diffusion精炼关键词公式:构图+主体+细节+风格+画质

    stable diffusion关键词公式的核⼼是通过结构化描述提升图像生成的精准度和表现力,其核心要素包括构图、主体、细节、风格和画质。1. 构图决定画面布局与视角,涵盖视角(如全身像、特写)、取景范围(如黄金分割)、景深(如浅景深突出主体)、光线(如伦勃朗光)和透视(如一点透视);2. 主体是画…

    2026年9月25日 • 用户投稿
    000
  • 公众号文章如何插入图片_在公众号文章中插入图片的正确方法

    公众号文章如何插入图片_在公众号文章中插入图片的正确方法公众号文章如何插入图片_在公众号文章中插入图片的正确方法公众号文章如何插入图片_在公众号文章中插入图片的正确方法公众号文章如何插入图片_在公众号文章中插入图片的正确方法

    插入图片可提升公众号文章可读性与美观度,常用方法有四种:一、通过微信后台直接上传,操作简单;二、使用秀米等第三方工具排版后同步,功能丰富;三、用Markdown编辑并转HTML导入,适合高效写作;四、借助壹伴等工具批量上传,提升多图处理效率。 如果您在编辑公众号文章时希望增强内容的可读性和吸引力,插…

    2026年9月25日 • 用户投稿
    000
  • 微信小店保证金提现多久到账?微信小店2000保证金怎么退回

    微信小店作为一种新型的电子商务模式,受到越来越多创业者的青睐。在开设微信小店的过程中,保证金是必不可少的一环。许多商家对于微信小店保证金提现的流程及到账时间存在疑问。本文将为您详细解析微信小店保证金提现的相关问题,帮助您更好地了解这一环节。 一、微信小店保证金提现流程 1. 登录微信小店后台 您需要…

    2026年9月25日
    000
  • 如何将一键PHP环境迁移到新电脑_环境数据迁移教程

    先完整备份旧环境的网站文件、数据库和配置,再在新电脑安装相同版本的一键PHP环境,最后还原数据与配置实现迁移。 如果你在旧电脑上使用一键PHP环境(如phpStudy、XAMPP、WampServer等),想把整个开发环境和数据迁移到新电脑,可以按以下步骤操作,确保网站、数据库、配置全部完整转移。 …

    2026年9月25日
    000
  • 显卡外接供电接口规格如何影响超频潜力?

    显卡供电接口类型与数量直接决定其最大供电能力,进而影响超频潜力。PCIe插槽提供75W,6-pin接口额外提供75W,8-pin提供150W,双8-pin可达300W外接供电,加上PCIe的75W,总供电达375W,显著高于单8-pin的225W上限。更多更高规格接口意味着更高的功耗预算,使GPU在…

    2026年9月25日
    000
  • Debian系统与GitLab的数据同步问题怎么处理

    Debian系统与GitLab的数据同步问题怎么处理Debian系统与GitLab的数据同步问题怎么处理Debian系统与GitLab的数据同步问题怎么处理Debian系统与GitLab的数据同步问题怎么处理

    确保Debian系统上GitLab数据的安全性和可恢复性,定期备份至关重要。本文介绍如何利用GitLab内置工具进行备份,并提供一些最佳实践。 利用GitLab内置备份工具 GitLab自带的gitlab-backup工具可以备份整个GitLab实例,包含代码库、数据库和配置文件等。 备份指令: s…

    2026年9月25日 • 用户投稿
    100
  • LINUX怎么查找包含特定内容的文件_LINUX使用grep命令查找文件内容

    LINUX怎么查找包含特定内容的文件_LINUX使用grep命令查找文件内容LINUX怎么查找包含特定内容的文件_LINUX使用grep命令查找文件内容LINUX怎么查找包含特定内容的文件_LINUX使用grep命令查找文件内容LINUX怎么查找包含特定内容的文件_LINUX使用grep命令查找文件内容

    使用grep命令可快速查找Linux系统中包含特定文本的文件。首先通过grep -r “关键词” /路径/ 实现目录递归搜索,如grep -r “error” /home/user/;添加-i参数忽略大小写,-n显示行号。结合find与grep可按文件…

    2026年9月25日 • 用户投稿
    100
  • sublime怎么设置鼠标滚轮速度_sublime滚动灵敏度调整方法

    sublime怎么设置鼠标滚轮速度_sublime滚动灵敏度调整方法sublime怎么设置鼠标滚轮速度_sublime滚动灵敏度调整方法sublime怎么设置鼠标滚轮速度_sublime滚动灵敏度调整方法sublime怎么设置鼠标滚轮速度_sublime滚动灵敏度调整方法

    Sublime Text 无法直接调节滚轮速度,需通过系统设置、插件或鼠标驱动优化。1. 调整操作系统鼠标滚轮设置:Windows 修改“一次滚动的行数”,macOS 调节“滚动速度”滑块,Linux 使用桌面设置或 xinput 命令;2. 安装 SmoothScroll 插件提升滚动流畅度,支持…

    2026年9月25日 • 用户投稿
    000
  • Debian系统中如何监控GitLab的运行状态

    Debian系统中如何监控GitLab的运行状态Debian系统中如何监控GitLab的运行状态Debian系统中如何监控GitLab的运行状态Debian系统中如何监控GitLab的运行状态

    本文介绍在Debian系统上监控GitLab运行状态的几种方法,助您确保GitLab稳定运行。 方法一:使用systemd服务管理器 GitLab通常以systemd服务形式运行。 在终端输入以下命令查看GitLab服务状态: sudo systemctl status gitlab 该命令会显示服…

    2026年9月25日 • 用户投稿
    100
  • 小红书怎么查注册日期?小红书怎么查注册日期和时间

    小红书怎么查注册日期?小红书怎么查注册日期和时间小红书怎么查注册日期?小红书怎么查注册日期和时间小红书怎么查注册日期?小红书怎么查注册日期和时间小红书怎么查注册日期?小红书怎么查注册日期和时间

    随着社交媒体的不断发展,小红书已经成为了一个热门的分享平台。在这个平台上,我们可以发现各种有趣的内容,结交志同道合的朋友,甚至还能找到生活中的灵感。你是否好奇过自己是在什么时间注册的小红书呢?今天,就让我来带你了解一下,如何在小红书上查找注册日期。 一、登录小红书账号 当然是要确保你已经成功注册了小…

    2026年9月25日 • 用户投稿
    000
  • VSCode如何搭建ClojureScript开发 VSCode配置Clojure前端项目环境

    要在vscode里搭建clojurescript前端开发环境,核心是使用calva扩展结合shadow-cljs构建工具。1. 安装vscode、jdk 11+、node.js;2. 通过npm全局安装shadow-cljs:npm install -g shadow-cljs;3. 安装vscod…

    2026年9月25日
    000
  • 抖音带货技巧全解析

    抖音带货技巧全解析抖音带货技巧全解析抖音带货技巧全解析抖音带货技巧全解析

    许多电商创业者都在探索如何通过抖音实现商品变现。具体该如何操作?流程又是怎样的呢?下面将为你逐步解析抖音带货的实用方法与核心步骤。 1、 打开抖音App,启动应用。 2、 进入个人主页,点击头像或“我”页面。 3、 在右上角找到并点击三条横线菜单按钮。 4、 选择进入“创作者服务中心”。 AI抖音 …

    2026年9月25日 • 用户投稿
    000
  • UC浏览器如何查看网页加载速度_UC浏览器网页性能与速度检测方法

    UC浏览器如何查看网页加载速度_UC浏览器网页性能与速度检测方法UC浏览器如何查看网页加载速度_UC浏览器网页性能与速度检测方法UC浏览器如何查看网页加载速度_UC浏览器网页性能与速度检测方法UC浏览器如何查看网页加载速度_UC浏览器网页性能与速度检测方法

    首先开启UC浏览器的网页资源检测提示功能,进入设置→网页浏览设置→开启网页资源检测提示;然后使用开发者工具分析,输入ucdebug调出调试菜单,通过Network标签查看资源加载耗时与大小;最后借助WebPageTest或Pingdom等第三方测速平台,输入目标URL并选择测试条件,获取包含TTFB…

    2026年9月25日 • 用户投稿
    000
  • Debian Tomcat日志中的并发问题如何解决

    Debian Tomcat日志中的并发问题如何解决Debian Tomcat日志中的并发问题如何解决Debian Tomcat日志中的并发问题如何解决Debian Tomcat日志中的并发问题如何解决

    本文探讨如何解决Debian系统下Tomcat服务器的并发问题。 高并发访问可能导致Tomcat性能下降甚至崩溃,本文提供多种优化策略: 一、调整Tomcat配置: 线程池优化: 修改conf/server.xml文件中的Connector元素,调整maxThreads(最大线程数)、minSpar…

    2026年9月25日 • 用户投稿
    100
  • AI图片无损放大有哪些 可以AI图片无损放大工具汇总

    AI图片无损放大有哪些 可以AI图片无损放大工具汇总AI图片无损放大有哪些 可以AI图片无损放大工具汇总AI图片无损放大有哪些 可以AI图片无损放大工具汇总AI图片无损放大有哪些 可以AI图片无损放大工具汇总

    ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ 吐司AI高清:吐司AI推出的图片变高清/修复工具 稿定AI变清晰:稿定设计推出的AI变清晰图像处理工具 美图无损放大:美图设计室推出的AI图片变清晰工具 美间AI无损放大:免费的AI图片放大、变…

    2026年9月25日 • 用户投稿
    100
  • 如何检测显示器是否存在色彩准确度问题?

    如何检测显示器是否存在色彩准确度问题?如何检测显示器是否存在色彩准确度问题?如何检测显示器是否存在色彩准确度问题?如何检测显示器是否存在色彩准确度问题?

    答案:检测显示器色彩准确度需从肉眼观察、专业图卡比对到校色仪硬件校准三个层次进行,常见问题包括面板老化、出厂校准不佳、驱动设置错误等;选购时应关注专业品牌、Delta E值及出厂报告,校准后若色彩不习惯多因人眼适应性、环境光干扰或ICC文件未正确加载所致。 检测显示器色彩准确度问题,通常从肉眼观察、…

    2026年9月25日 • 用户投稿
    000
  • sublime怎么配置Angular开发环境_sublime搭建Angular开发环境步骤

    sublime怎么配置Angular开发环境_sublime搭建Angular开发环境步骤sublime怎么配置Angular开发环境_sublime搭建Angular开发环境步骤sublime怎么配置Angular开发环境_sublime搭建Angular开发环境步骤sublime怎么配置Angular开发环境_sublime搭建Angular开发环境步骤

    首先安装Sublime Text并更新至最新版,然后通过Package Control安装Emmet、TypeScript、AngularJS等插件以支持Angular开发,配置TypeScript语法识别,启用代码片段和智能提示,结合外部终端使用Angular CLI生成文件,最后通过保存项目和设…

    2026年9月25日 • 用户投稿
    100
  • 淘宝百亿补贴多久才能再买一次?购物技巧有哪些呢?「限购规则全破解」淘宝百亿补贴二次购买攻略+5大必学抢购技巧,手慢无!

    淘宝百亿补贴多久才能再买一次?购物技巧有哪些呢?「限购规则全破解」淘宝百亿补贴二次购买攻略+5大必学抢购技巧,手慢无!淘宝百亿补贴多久才能再买一次?购物技巧有哪些呢?「限购规则全破解」淘宝百亿补贴二次购买攻略+5大必学抢购技巧,手慢无!淘宝百亿补贴多久才能再买一次?购物技巧有哪些呢?「限购规则全破解」淘宝百亿补贴二次购买攻略+5大必学抢购技巧,手慢无!淘宝百亿补贴多久才能再买一次?购物技巧有哪些呢?「限购规则全破解」淘宝百亿补贴二次购买攻略+5大必学抢购技巧,手慢无!

    在淘宝百亿补贴活动中成功下单心仪好物后,许多用户都会面临一个共同问题:「下次还能不能继续享受补贴优惠?」。根据平台现行规则,同一账号购买相同补贴商品通常需等待7至30天不等,具体时限会因活动节奏、商品类别等因素有所调整。本文将全面解读百亿补贴的购买机制,并分享5项极具实操价值的抢购策略,助你轻松把握…

    2026年9月25日 • 用户投稿
    000

发表回复

登录后才能评论
关注微信