1、substr 方法用于根据开始位置和长度截取字符串并返回截取部分字符串。其语法如下:
str_object.substr(start, length)
2、replace 方法用于在字符串中用一些字符串替换另一些字符串,或者替换符合正则匹配的字符串,并返回替换后的字符串。其语法如下:
str_object.replace(reg_exp/str, replacement)
1)字符串替换实例:
下面的例子演示了 replace 方法的字符串替换实例:
<script language="JavaScript"> var str = "www.example.com"; document.write( str.replace("example", "5idev") ); </script>
运行该例子,输出:
www.5idev.com
注意:字符串替换只替换第一个符合要求的字串(只替换一次),如果要替换字符串中所有符合要求的字串,建议用正则表达式带全局参数 g 的模式,具体见下文例子。
2)正则表达式字符串替换实例:
replace 方法除了支持简单的字符串替换外,也支持正则表达式替换:
<script language="JavaScript"> var str = "www.example.com is a example domains site of INNA."; document.write( str.replace(/example/, "5idev") ); </script>
运行该例子,输出:
www.5idev.com is a example domains site of INNA.
当给正则表达式加上全局标志 g 时:
<script language="JavaScript"> var str = "www.example.com is a example domains site of INNA."; document.write( str.replace(/example/g, "5idev") ); </script>
运行该例子,输出:
www.5idev.com is a 5idev domains site of INNA.
注意,如果您要忽略大小写,可以加上 i 参数:/example/gi 。
3、slice 方法用于截取字符串中的一部分并返回该部分字符串。其语法如下:
str_object.replace(start, end)
slice 方法实例:
<script language="JavaScript"> var str = "abcdef"; document.write( str.slice(1) + "<br />" ); document.write( str.slice(1,3) + "<br />" ); // 获取最后两个字符 document.write( str.slice(-2) + "<br />" ); document.write( str.slice(-4,-2) ); </script>
运行该例子,输出:
bcdef
bc
ef
cd
4、split 方法用于将字符串分割为字符串数组并返回该数组。其语法如下:
str_object.split(separator[, limit])
1)split 方法实例
<script language="JavaScript"> var str = "www.5idev.com"; document.write( str.split(".") + "<br />" ); document.write( str.split("") + "<br />" ); document.write(str.split(".", 2)); </script>
运行该例子,输出:
www,5idev,com
w,w,w,.,5,i,d,e,v,.,c,o,m
www,5idev
提示:如上例所示,如果把空字符串 ("") 用作 separator,str_object 中的每个字符之间都会被分割。
2)split 方法使用正则表达式:
split 方法还支持使用正则表达式对字符串进行分割:
<script language="JavaScript"> document.write( "1a2b3c".split(/\d/) + "<br />"); document.write( ":a:b:c".split(":") ); </script>
运行该例子,输出:
a,b,c
,a,b,c
5、substring 方法用于通过指定开始和结束位置来截取字符串并返回截取部分字符串。其语法如下:
str_object.substring(start, end)
提示:如果参数 start 与 end 相等,那么该方法返回的就是一个空串。如果 start 比 end 大,那么该方法在截取字符串之前会先交换这两个参数。
substring 方法实例:
<script language="JavaScript"> var str = "abcdef"; document.write( str.substring(1, 3) + "<br />" ); document.write( str.substring(2, 2) + "<br />" ); document.write(str.substring(3, 1)); </script>
运行该例子,输出:
bc
bc
substring 与 slice 、substr 的区别
substring 不能接受负的参数,而 slice 方法则可以
substring 第二个参数是指定截取结束的位置,而 substr 方法第二个参数是指定字符串截取的长度
6、indexOf 方法用于计算某个指定的字符串在字符串中首次出现的位置,并返回该数值。其语法如下:
str_object.indexOf( search[, start ])
start 可选。指定开始检索的位置,如省略该参数,则将从字符串的首字符开始检索
提示:字符串是从 0 开始计数的。
indexOf 方法实例:
<script language="JavaScript"> var str = "www.5idev.com"; document.write( str.indexOf( "." ) ); </script>
运行该例子,输出:
3
indexOf 对大小写敏感,如果要检索的字符串值没有出现,则该方法返回 -1。
7、lastIndexOf 方法用于计算指定的字符串在整个字符串中最后一次出现的位置,并返回该数值。其语法如下:
str_object.lastIndexOf( search, start )
start 可选。指定开始检索的位置,如省略该参数,则将从字符串的最后一个字符开始检索
提示:字符串是从 0 开始计数的。
lastIndexOf 方法实例:
<script language="JavaScript"> var str = "www.5idev.com"; document.write( str.lastIndexOf( "." ) + "<br />" ); document.write( str.lastIndexOf( ".", 5 ) + "<br />" ); document.write( str.lastIndexOf( ".", 10 ) ); </script>
运行该例子,输出:
9
3
9
注意在上面第二个参数为 5 的例子中,实际找到的是第一个 . 符号,即在 www.5 字符串中搜索。
lastIndexOf 对大小写敏感,如果要检索的字符串值没有出现,则该方法返回 -1。