JS截取字符串,以某个字符为分割线,截取相应的字符,如下面的例子,以邮箱为用户名,但地址太长,影响界面布局,就需要截掉一部分,以@为分割点,只留@前面的字符串,可以用substring(0,indexOf())和split()来截取,具体操作方法如下。
<span id=”uid”>fuxiaochun@fuxiaochun.com</span>
方法一:
<script type=”text/javascript”>
var uid=document.getElementById(“uid”).innerHTML; document.getElementById(“uid”).innerHTML=uid.substring(0,uid.indexOf(‘@’));
</script>
输出结果为:fuxiaochun
stringObject.substring(start,stop)
start:必需有,一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
stop:可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多1。如果省略该参数,那么返回的子串会一直到字符串的结尾。
对#uid的html字符串进行提取,从第一个字符开始,在‘@’符号前截断结束。
另一种方法是用split分割字符串,用数组的方式提取。
<script type=”text/javascript”>
var uid=doument.getelementbyid(“uid”).innerHTML;
var str=uid.split(“@”); //以‘@’分割;
for(var i=0;i<str.length;i++)
{
var a=str[0];
document.getElementById(“uid”).innerHTML=a;
}
split就是将一字符串以特定的字符分割成多个字符串。
uid的html就被分为数组str[fuxiaochun,fuxiaochun.com],我们需要的是@前面的,即数组里的第一个,因此需要输出的是str[0]。
定义和用法
split() 方法用于把一个字符串分割成字符串数组。
语法
stringObject.split(separator,howmany)
参数:separator
描述:必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
参数:howmany
描述:可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
返回值:一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括 separator 自身。但是,如果 separator 是包含子表达式的正则表达式,那么返回的数组中包括与这些子表达式匹配的字串(但不包括与整个正则表达式匹配的文本)。