用来获取子串的两个函数substr和substring用法比较

来源:互联网 发布:网络推广效果 编辑:程序博客网 时间:2024/04/29 22:44

substr函数和substring函数都是用来从某个“母字符串”中提取“子字符串”的函数。但用法有些差别,下面分别介绍。

substr函数

功能:从“母字符串”的“指定位置”开始提取“指定长度”的“子字符串”。

使用方法:字符串数据.substr(start [,length])

start是必选项。指明要提取的“子字符串”的起始位置。字符串中的第一个字符的索引为 0。

length是可选项。指明要提取的“子字符串”中应包括的字符个数。如果 length 为 0 或负数,将返回一个空字符串。如果没有指定该参数,则子字符串将延续到“母字符串”的最后。

下面的示例演示了substr函数的用法。

母串 = "上海自来水来自海上"; 子串1 = 母串.substr(2,4);   //从编号为2的字符开始,提取4个长度的子字符串。 返回值: "自来水来"子串2 = 母串.substr(2);   //从编号为2的字符开始,到最后一个字符的子字符串。 返回值: "自来水来自海上"

substring函数

功能:从“母字符串”中提取从“起始位置”到“结束位置”的“子字符串”。

使用方法:字符串数据.substring(start,end)

start参数指明子字符串中“第一个字符”的位置。

end参数指明子字符串中“最后一个字符”的“后面一个字符”的位置。

substring函数返回一个从 "start位置" 开始 到 "end-1位置" 结束(不包含 "end位置"的字符 )的子字符串。

substring函数使用 start 和 end 两者中的较小值作为子字符串的起始点。例如,字符串数据.substring(0,3) 和 字符串数据.substring(3,0) 将返回相同的子字符串。

如果 start 或 end 为 NaN 或者负数,那么将其替换为0。

子字符串的长度等于 start 和 end 之差的绝对值。例如,字符串数据.substring(0,3) 和 字符串数据.substring(3,0) 返回的子字符串的的长度是 3。

下面的示例演示了substring函数的用法。

母串 = "上海自来水来自海上";子串 = 母串.substring(2,4);   //从“编号为2”的字符开始,到“编号为(4-1)”的字符结束的子字符串。返回值: "自来"