试图找到漂亮网址的正则表达式
Trying to find the regex for pretty URLs
我的网站结构是这样的:
/docs/one_of_the_resources/one-of-the-resources.html
/docs/a_complete_different_resource/a-complete-different-resource.html
我想删除 url 中的所有子文件夹并得到这个:
/one-of-the-resources.html
/a-complete-different-resource.html
子文件夹不应受到影响:
/docs/one_of_the_resources/assets/*
文件夹名称始终与 html 文件相同,只是破折号与下划线交换,当然没有后缀。
我正在使用 grunt-contrib-rewrite 和 grunt-connect。
无法理解它。这可能吗?
可以使用否定字符class
/\/[^/]+$/
[^/]+
匹配 /
以外的任何内容。量词 +
确保一个或多个字符。
$
将正则表达式锚定在字符串的末尾。
例子
string = "/docs/one_of_the_resources/one-of-the-resources.html";
console.log(string.match(/\/[^/]+$/)[0]);
// => one-of-the-resources.html
我的网站结构是这样的:
/docs/one_of_the_resources/one-of-the-resources.html
/docs/a_complete_different_resource/a-complete-different-resource.html
我想删除 url 中的所有子文件夹并得到这个:
/one-of-the-resources.html
/a-complete-different-resource.html
子文件夹不应受到影响:
/docs/one_of_the_resources/assets/*
文件夹名称始终与 html 文件相同,只是破折号与下划线交换,当然没有后缀。
我正在使用 grunt-contrib-rewrite 和 grunt-connect。
无法理解它。这可能吗?
可以使用否定字符class
/\/[^/]+$/
[^/]+
匹配/
以外的任何内容。量词+
确保一个或多个字符。$
将正则表达式锚定在字符串的末尾。
例子
string = "/docs/one_of_the_resources/one-of-the-resources.html";
console.log(string.match(/\/[^/]+$/)[0]);
// => one-of-the-resources.html