我正在创建脚本,该脚本会剪切不需要的字符串部分,但保留其余部分。我有一个奇怪的问题 - 我创建的正则表达式匹配字符串,但不是所有可能的符号。
测试字符串:
$itemFullName = "10-16X4 POLI MG SELF START BLK PLASTIC";
“模式”我有:
POLI MG FT SDS BLK ZC
PHP代码:
if(preg_match("@(POLI){1}(.)+(BLK)@", $itemFullName))
{
$itemAttributes = preg_replace("@(POLI){1}(.)+(BLK)@", "#", $itemFullName);
}
最后 $itemAttributes 设置为:
"10-16X4 #K PLASTIC".
看起来正则表达式仅捕获 [POLI MG SELF START BL]K 部分并将其更改为“#”而不是整个匹配POLI MG SELF START BLK并替换它。
我该如何解决?