JS中如何分离字符串

JavaScript018

JS中如何分离字符串,第1张

有两种方式

1、通过split关键字进行分离

var str = "abd,sda,dsad"//定义一个字符串

var arr = str.split(",")//通过逗号把字符串分隔。

//arr[0]等于abd,arr[1]等于sda,arr[2]等于dsad

2、通过substring的方式进行分割

var str ="abdsdafewe"

var s1 = str.substring(0,4)//取前半部分abds

var s2 = str.substring(4,str.length)//取后半部分dafewe

感觉你这个逻辑好奇怪! 为什么不是直接用 | 拆分成一个数组呢!?

先用最基本的substring方法处理一下吧:

<html>

  <head>

    <script language="javascript">

      function Window_Load(){

         var str = "abc|def|g"

         var position = str.indexOf("|")

         var ls = str.substring(0,position)

         alert(ls) // 第一个 | 左边的字串: abc

         

         var rs = str.substr(position + 1).replace("|","")

         alert(rs) // 第一个 | 右边的字串: defg

      }

    </script>

  </head>

  <body onload="Window_Load()">

  

  </body>

</html>

正常的拆分最好还是用split方法:

<html>

  <head>

    <script language="javascript">

      function Window_Load(){

         var str = "abc|def|g"

         var data = str.split("|")

         

         //左边的字串: abc 

         var ls = data.shift()

         alert(ls)

         

         //右边的字串: defg

         var rs = data.join("")

         alert(rs)

      }

    </script>

  </head>

  <body onload="Window_Load()">

  

  </body>

</html>

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

语法: stringObject.split(separator,howmany)

返回值: 一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括separator 自身。

<script type="text/javascript">

var str="How are you doing today?"

document.write(str.split(" ") + "<br />")//How,are,you,doing,today?

document.write(str.split(" ",3))//How,are,you

</script>

解释:str.split(' ' )是以空格拆分,差分后,行程结果的数组,数组的元素都为字符串。

str.split(' ',3)是以空格拆分,拆分后,只取数组length为3的数组。