js使用split函数按照多个字符对字符串进行分割的方法

定义和用法

split() 方法用于把一个字符串分割成字符串数组。

语法

stringObject.split(separator,howmany)

参数 描述

separator 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。 
howmany 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。

1.js中的split()函数可以对字符串按照指定的符号进行分割,但是如果字符串中存在多个分割符号,js的split()函数是否还可以胜任呢,答案是肯定的,js的split()函数可以通过正则表达式实现多分隔符的字符串分割,调用也很简单,下面是详细范例。

下面的代码可以通过js split方法对字符串按照逗号分割

var mystring = "a,b,c,d,e";
var myarray = mystring.split(",");

如果有这样一个字符串:"jb51.net,google.com,baidu.com_weibo.com_haotu.net", 
我们希望同时按照逗号和下划线对网站地址进行分割,参考下面的代码:

var mystring = "jb51.net,google.com,baidu.com_weibo.com_haotu.net";
var myarray = mystring.split(/[,_]/);

2.JS下有一个字符串var str = '1|2|3|4|5|6#1|2|3|4#1|2|3|4|5|6|7|8'; 请用“#”号将其分割为数组,

再用“|”将其分割为2维数组。
可以用例如ary[0][0]这样的各式取出数组中的每个元素。
最后输出其中最长数组的编号(1,2,3这样的自然数),这个数组中元素的个数。以及大数组中每个元素。

<html> 
    <head> 
        <meta http-equiv="Content-Type" content="text/html; charset=gbk" /> 
        <script> 
            function getResult()  
            {  
                var yiwei=new Array();  
                var brray=new Array();  
                var i=0;  
                var n=0;  
                var m=0;  
                var str=document.getElementById("input1").value;  
                yiwei=str.split("#");  
                for(i=0;i<yiwei.length;i++){  
                    brray[i]=yiwei[i].split("|");  
                    if(brray[i].length>n){  
                        n=brray[i].length;  
                        m=i+1;  
                        }  
                    }  
                    var str1="最长的数组是"+m+"<br>"+"长度为"+n+"<br>";  
                      
                  for(var i=0;i<brray.length;i++){  
                    str1+=brray[i].join(",")+"<br/>";  
                  }  
                    document.getElementById("result").innerHTML=str1;  
            }  
        </script> 
    </head> 
    <body> 
    <pre> 
        JS下有一个字符串var str = '1|2|3|4|5|6#1|2|3|4#1|2|3|4|5|6|7|8'; 请用“#”号将其分割为数组,  
        再用“|”将其分割为2维数组。  
        可以用例如ary[0][0]这样的各式取出数组中的每个元素。  
        最后输出其中最长数组的编号(1,2,3这样的自然数),这个数组中元素的个数。以及大数组中每个元素。  
    </pre> 
    <input type="text" id="input1" value="1|2|3|4|5|6#1|2|3|4#1|2|3|4|5|6|7|8" ><input type="button" onclick="getResult()" value="获得结果"><br/> 
    结果  
    <div id="result"> 
    </div> 
    </body> 
</html>
原文地址:https://www.cnblogs.com/mailan/p/4952127.html