正则表达式提取和格式化部分网址

时间:2015-09-16 04:21:28

标签: php regex

我需要提取以下网址的p5925c98

http://www.example.com/mens-shoes/mens-boots/p5925/c98/colour/Black

我想要的格式是:

p:5925c:98

我现在得到的正则表达式是([^pc]\d+),它只匹配数字,但不知道我怎么能以我想要的格式得到它。

我使用代码preg_match('/([^pc]\d+)/', $ls_url, $la_matches);来分割它。

1 个答案:

答案 0 :(得分:2)

您需要使用preg_match_all

preg_match_all('~(?<=/)([pc])(\d+)(?=/)~', $ls_url, $la_matches);

preg_match_all('~\b([pc])(\d+)\b~', $ls_url, $la_matches);

DEMO