我不太了解正则表达式,我对从正则表达式检查中获取部分变量的可能性存有疑问。我试着解释一下我在找什么......
我有这样的道路:
example.com/dir1/
example.com/dir1/val1
example.com/dir1/val1-val2
我想创建一个提取 dir1 val1 和 val2 的表达式。
我的问题是:
我是否可以仅提取存在的变量,还是必须编写3个表达式?我的意思是......
如果我使用规则:example.com/dir1/val1-val2
如果我传递的网址是www.example.com/category
(dir1 =类别),我只能获得dir1吗?
然后如果网址为:www.example.com/category/car
获取dir1 = category
和val1 = car
答案 0 :(得分:1)
explode("/", $url)
最简单。如果结构比允许的更复杂,则可以使用preg_split()代替并列出可用作细分的所有可能字符。
$urlParts = preg_split('/[_\/-]/', $url);
答案 1 :(得分:0)
你可以使用explode('/',$ url);要获得包含所有值的数组,不应使用正则表达式来解决此类问题