【发布时间】:2017-07-28 17:09:24
【问题描述】:
我有一个包含“LAB_FF,LAB_FF12”之类的字符串,我正在尝试使用 preg_replace 来查找这两种模式,并使用以下模式匹配将它们替换为不同的字符串;
/LAB_[0-9A-F]{2}|LAB_[0-9A-F]{4}/
所以输入是
LAB_FF, LAB_FF12
输出需要是
DAB_FF, HAD_FF12
问题是,对于第二个字符串,它将其解释为“LAB_FF”而不是“LAB_FF12”,因此输出为
DAB_FF, DAB_FF
我尝试使用 2 个不同的 preg_match 语句将输入行分开,第一个查找 {2} 模式,第二个查找 {4} 模式。这种工作方式是我可以将正确的输出转换为 2 个单独的字符串,但不能将这两个字符串组合起来给出单个修改后的输出。
【问题讨论】:
-
显示你用来替换东西的代码。
-
这里发布的答案有什么问题吗?如果有问题请告诉我,以便我修复它。
标签: php preg-replace preg-match