帮忙js处理下字符串提取出汉字与数字。。

JavaScript012

帮忙js处理下字符串提取出汉字与数字。。,第1张

根据CharCode是否在ASCII码范围内来区分数字汉字

<script>  

var str="88美元23欧元34.89人民币"

var arr = new Array()

var i = 0

while (i<str.length) {

    var s=""

     while (str.charCodeAt(i) < 256) {

  s=s+str.charAt(i)

  i++

    }

    arr.push(s)

    var s=""

     while (str.charCodeAt(i) > 256) {

  s=s+str.charAt(i)

  i++

    }

    arr.push(s)

}

for (i=0 i<arr.length i++) {

    document.write(arr[i]+" ")

}

</script>

哇哦,我们先来看有趣的结构:[叶问123]+[用户你的序号是:]+[568],接下来我们就开干吧:

var content = "叶问123用户你的序号是:568……" // 那段文本

var lines = content.split('\n') // 用换行符分割为数组

var userInfo = [] // 创建一个数组

// 遍历内容

for(let i = 0i<lines.lengthi++){

let item = lines[i] // 单行文本

let userAndNum = item.split("用户你的序号是:") // 获取用户名和用户序号。

userInfo.push(userAndNum)

}

/*

最后你会得到这样的数组:

[

["叶问123","568"],

["白衣","795"],

...

]

每个用户和他所对应的序号都拿到了。剩下都事情相信不难了。

*/

// 正则

var str = '111_abc_222'

var match = str.match(/(^\d+)|(\d+$)/g)

var num1 = match[0]

var num2 = match[1]

alert(num1)

alert(num2)

// 不用非要正则吧

var str = '111_abc_222'

var arr = str.split('_')

var num1 = arr[0]

var num2 = arr[arr.length - 1]

alert(num1)

alert(num2)