split() 方法用于把一个字符串分割成字符串数组
语法:stringObject.split(separator,howmany)
返回值
一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括 separator 自身。
但是,如果 separator 是包含子表达式的正则表达式,那么返回的数组中包括与这些子表达式匹配的字串(但不包括与整个正则表达式匹配的文本)。
看到一csdn的一个题目。关于分割字符串的
4523425432NB,32423TY,4NT,43232423432YT,
对于以上的字符,最后两位是字母,前面是数字,位数不定,怎么把数字和字母分别取出.
想自己试试看
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>split</title>
</head>
<body>
<!--4523425432NB,32423TY,4NT,43232423432YT,
对于以上的字符,最后两位是字母,前面是数字,位数不定,怎么把数字和字母分别取出-->
<script>
var str = "4523425432NB,32423TY,4NT,43232423432YT,";
var ms = str.split(/(\d+)([a-zA-Z]{2})/);
for(i = 0; i < ms.length; i++) {
document.write(ms[i]+ "<br />");
}
</script>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>split</title>
</head>
<body>
<!--4523425432NB,32423TY,4NT,43232423432YT,
对于以上的字符,最后两位是字母,前面是数字,位数不定,怎么把数字和字母分别取出-->
<script>
var str = "4523425432NB,32423TY,4NT,43232423432YT,";
var ms = str.split(/(\d+)([a-zA-Z]{2})/);
for(i = 0; i < ms.length; i++) {
document.write(ms[i]+ "<br />");
}
</script>
</body>
</html>
但是输出的结果是这样的;
4523425432
NB
,
32423
TY
,
4
NT
,
43232423432
YT
,
为什么还有逗号呢?应该要得到的是没有逗号的结果!~~