Hello! 欢迎来到小浪资源网!


PHP正则表达式如何正确匹配并转换字符串中的数字?


PHP正则表达式如何正确匹配并转换字符串中的数字?

php 正则匹配红色字体数字,转换为字符串

一位求助者提出了一个正则表达式,试图将标签中的红色字体数字转换为字符串,表达式如下:

preg_replace('/^"customeruid":(d{1,})./', '"customeruid":"1",', $row);

代码中红色字体部分表示需要转换的数字。然而,该正则存在一个错误。

正确的正则表达式

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

preg_replace('/"customeruid":(d{1,})/', '"customeruid":""', $row);

修正后的部分:

/"customeruid":(d{1,})/

修正内容:

将 “^” 移除了。”^” 表示字符串的开头,在这种情况下是不必要的,因为它正在寻找包含 “customeruid” 字符串的标签。

完整的正确正则表达式:

preg_replace('/"customeruid":(d{1,})/', '"customeruid":""', $row);

解释:

  • “customeruid”: 定位 “customeruid” 字符串
  • (d{1,}): 捕获组,匹配一个或多个数字
  • 1: 反向引用,用捕获的数字替换为字符串

使用正确的正则表达式,您将能够将红色字体数字转换为字符串。

相关阅读