JavaScript RegExp可识别特定的文件扩展名

时间:2018-03-22 17:47:41

标签: javascript regex

有没有办法编写一个能够识别 .ts 文件扩展名的JavaScript正则表达式:

"file.ts" 

但是会失败:

"file.vue.ts"

我需要的是,如果文件名以 .vue.ts 结尾,则不应将其作为 .ts 文件处理。

我尝试了很多事情但没有成功。

更新:它需要是一个正则表达式,因为这是我传递给函数参数的内容。

4 个答案:

答案 0 :(得分:3)

你可以寻找前一个点,如果没有,则返回true

console.log(["file.ts", "file.vue.ts"].map(s => /^[^.]+\.ts$/.test(s)));

答案 1 :(得分:2)

正则表达式为two



^[^.]+.ts$




说明: -

var x=/^[^.]+.ts$/;
console.log(x.test("file.ts"));
console.log(x.test("file.vue.ts"));
console.log(x.test("file.vue.ts1"));

答案 2 :(得分:1)

除特殊字符外,这将有效。允许使用大写字母,小写字母,数字,下划线和短划线:

^[a-zA-Z0-9\_\-]+(\.ts)$

答案 3 :(得分:1)

const regex = /(.*[^.vue]).ts/g;
abc.ts.ts Matches
abc.xyx.htm.ts Matches
abc.vue.ts Fails
xyz.abx.sxc.vue.ts Fails

Javascript正则表达式应该就是这个。