我需要从字符串中提取2个部分,并将它们放入数组中。PHP正则表达式使用preg_split
$test = "add_image_1";
我需要确保此字符串以“add_image”开始,以“_1”结尾但只能存储在最后的数字部分。我想使用preg_split作为学习经验,因为我将来需要使用它。
我不知道如何使用这个功能来找到一个确切的词(我尝试使用“\ b”和故障),我用“\ w +”来代替:
$result = preg_split("/(?=\w+)_(?=\d)/", $test);
print_r($result);
该作品除了它也接受一堆其他无效格式,如: “add_image_1_2323”。我需要确保它只接受这种格式。最后一位数字可以大于1位数字。
的结果应该是:
Array (
[0] => add_image
[1] => 1
)
我怎样才能让这个更安全?
'preg_split'是不检查的格式工具。 'preg_match'更适合此任务,并且如果要提取部件,请使用捕获组。 –