A-A+

javascript中截取字符串的方法

2016年02月16日 web前端设计 暂无评论 阅读 7 views 次

在JS中,Javascript提供了两种截取字符串中子串的函数,如有substring(str,end)与substr()函数,它可自动识别中文英的截取哦。

方法:

1.substring(str,end)

str是必须输入,必须是正值;

end是可选的必须是正值;

根据字面意思,str为截取的开始位置,字符串的第一个字符位置为0;end为截取的结束位置.

substring() 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。

例,代码如下:

  1. <meta charset="UTF-8" />   
  2. <script type='text/javascript'>   
  3. /**  
  4.  * substring函数使用DEMO  
  5.  */  
  6. var str = '欢迎各位童鞋到琼台博客做客';   
  7. var sub = str.substring(3);   
  8. alert(sub); // out : 位童鞋到琼台博客做客   
  9. </script>  

例,代码如下:

  1. <meta charset="UTF-8" />   
  2. <script type='text/javascript'>   
  3. /**  
  4.  * substring函数使用DEMO  
  5.  */  
  6. var str = '欢迎各位童鞋到琼台博客做客';   
  7. var sub = str.substring(3,11);   
  8. alert(sub); // out : 位童鞋到琼台博客   
  9. </script>  

substr

substr同样至少需要一个参数,第一个参数为起始位置,第二个参数可选,为长度。

只有一个参数,代码如下:

  1. <meta charset="UTF-8" />   
  2. <script type='text/javascript'>   
  3. /**  
  4.  * substring函数使用DEMO  
  5.  */  
  6. var str = '欢迎各位童鞋到琼台博客做客';   
  7. var sub = str.substr(3);   
  8. alert(sub); // out : 位童鞋到琼台博客做客   
  9. </script>  

两个参数,代码如下:

  1. <meta charset="UTF-8" />   
  2. <script type='text/javascript'>   
  3. /**  
  4.  * substring函数使用DEMO  
  5.  */  
  6. var str = '欢迎各位童鞋到琼台博客做客';   
  7. var sub = str.substr(3,2);   
  8. alert(sub); // out : 位童   
  9. </script>  

综合实例,字符串的位数都是从0开始,代码如下:

  1. <script language="javascript">  
  2. var stmp = "rcinn.cn";  
  3. //使用一个参数  
  4. alert(stmp.slice(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn"  
  5. alert(stmp.substring(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn"  
  6. //使用两个参数  
  7. alert(stmp.slice(1,5))//从第2个字符开始,到第5个字符;返回"cinn"  
  8. alert(stmp.substring(1,5));//从第2个字符开始,到第5个字符;返回"cinn"  
  9. //如果只用一个参数并且为0的话,那么返回整个参数  
  10. alert(stmp.slice(0));//返回整个字符串  
  11. alert(stmp.substring(0));//返回整个字符串  
  12. //那如何只反回第一个字符呢,可以用其它的函数,那如果一定要用这两个方法的话就指定第一个参数为0,第二个参数为1,看下面的例子  
  13. alert(stmp.slice(0,1));//返回"r"  
  14. alert(stmp.substring(0,1));//返回"r"  
  15. //在上面的例子中我们可以看出slice()和substring()的用法是相同的,返回的值也是一样的,但当参数为负数时,他们的返回值却不一样,看下面的例子  
  16. alert(stmp.slice(2,-5));//返回"i"  
  17. alert(stmp.substring(2,-5));//返回"rc"  
  18. //从上面两个例子可以看出slice(2,-5)实际上是slice(2,3),负5转换成正3;而substring(2,-5)实际上是substring(2,0),负数转换为0,swubstring总是把最小的数作为起始位置。  
  19. </script>  
标签:

给我留言