JavaScript截取文件后缀名、路径存在多个点

目录

substring

lastIndexOf

转数组 

正则


 例如:

let str = 'http://10.2.210.108:7004/test.com.png';

substring

console.log(str.substring(str.lastIndexOf(".")));
// .png

console.log(str.substring(str.lastIndexOf(".") + 1));
// png

substring方法从字符串中提取两个索引位置之间的字符,并返回子字符串。
substring方法从头到尾(不包括)提取字符。
substring方法不会更改原始字符串。
如果start大于end,则交换参数,(4, 1) = (1, 4)
小于0的开始或结束值被视为0

lastIndexOf

lastIndexOf方法返回字符串中指定值最后一次出现的索引(下标)。
lastIndexOf方法从尾到头搜索字符串。
lastIndexOf方法从开头(位置0)返回索引。
如果未找到该值,则lastIndexOf方法返回-1
lastIndexOf方法区分大小写。

转数组 

console.log('.' + str.split('.').pop());
// .png

console.log(str.split('.').pop());
// png

split方法将字符串拆分为子字符串数组。
split方法返回新数组,不会更改原始字符串。
如果(" ")用作分隔符,则字符串在单词之间进行拆分。

pop方法移除数组的最后一个元素,并返回该元素。
注释: pop方法会改变数组的长度。
提示: 如需删除数组的第一个元素,请使用shift方法。

正则

console.log(str.match(/.[^.]+$/)[0]);
// .png

console.log(str.match(/[^.]+$/)[0]);
// png

match方法将字符串与正则表达式进行匹配。
提示: 如果搜索值为字符串,则转换为正则表达式。
match方法返回包含匹配项的数组。
如果未找到匹配项,则match方法返回null
 

你可能感兴趣的:(js相关方法,javascript,开发语言,ecmascript)