为 url 匹配编写正则表达式
Write a regex for url match
我正在尝试编写 wordpress 漂亮的永久链接正则表达式。
我有以下网址。我需要 2 个火柴,
1st : last word between / and / before get/
2nd : string which is start with get/
Url的可能是这样的
http://localhost/akasia/yacht-technical-services/游艇船员/get/gulets/for/sale/
这里我需要"yacht-crew"和"get/gulets/for/sale/"
http://localhost/akasia/客户评价/get/motoryachts/for/sale/
这里我需要"testimonials"和get/motoryachts/for/sale/
http://localhost/akasia/may/be/lots/of/seperator/but/ineed/最后/get/ships/for/rent/
这里我需要"last"和get/ships/for/rent/
我用
赶上了第二部分
(.(get/(.)?))
但是第一部分没有运气。
如果有人能提供帮助,我将不胜感激。
问候
德尼兹
我假设 PHP。
$path = parse_url($url,PHP_URL_PATH);
$s = strrpos($path,'/');
$matches[] = substr($path,$s+1);
我建议如下:
([^\/]+?)\/(get\/.+)
https://regex101.com/r/uN6yH3/1
这个概念是你匹配非斜杠字符直到第一个斜杠(非贪婪),然后是单词 "get" 对其进行分组,然后将其余的作为第二组。
我正在尝试编写 wordpress 漂亮的永久链接正则表达式。
我有以下网址。我需要 2 个火柴,
1st : last word between / and / before get/
2nd : string which is start with get/
Url的可能是这样的
http://localhost/akasia/yacht-technical-services/游艇船员/get/gulets/for/sale/
这里我需要"yacht-crew"和"get/gulets/for/sale/"
http://localhost/akasia/客户评价/get/motoryachts/for/sale/
这里我需要"testimonials"和get/motoryachts/for/sale/
http://localhost/akasia/may/be/lots/of/seperator/but/ineed/最后/get/ships/for/rent/
这里我需要"last"和get/ships/for/rent/
我用
赶上了第二部分(.(get/(.)?))
但是第一部分没有运气。
如果有人能提供帮助,我将不胜感激。
问候 德尼兹
我假设 PHP。
$path = parse_url($url,PHP_URL_PATH);
$s = strrpos($path,'/');
$matches[] = substr($path,$s+1);
我建议如下:
([^\/]+?)\/(get\/.+)
https://regex101.com/r/uN6yH3/1
这个概念是你匹配非斜杠字符直到第一个斜杠(非贪婪),然后是单词 "get" 对其进行分组,然后将其余的作为第二组。