js split 正则

js split 正则,第1张

第一步:获取字符串。在程序中我是使用document.getElementId('textarea_id').value的方式获取的

第二步:使用JS提供的split函数将字符串分割成字符串数组

[javascript] view plaincopy

var strSrc = document.getElemetId("myTextareaID").value

var strArray = new Array()

','

第三步:使用JS提供的search函数对分割完得字符串进行匹配,看其是否符合我们的标准,该步骤可以用来验证电话号码,邮箱等。下面我们以验证邮箱为例子。

[html] view plaincopy

function checkEmailAdr(email)

{

var emailAdr = email.replace(/\s+/g,"")

if (emailAdr.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)

{

return true

}

else if (emailAdr.search(/^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+$/) != -1)

{

return true

}

else

{

return false

}

}

其中,

[html] view plaincopy

emailAdr = email.replace(/\s+/g,"")

非常重要,因为split函数分割完成字符串中可能带有一些特殊字符,比如空格,因此,会使得正则匹配结果不准确。

差不多包含了换行的各种情况,

只是应该写成split("\n|\r\n|\r")我已经测试过了,下面是测试代码

public class Test {

public static void main(String[] args) {

String ss = "sdalfjda\nkdafk\r\nadasdada\rdfa"

String[] sa = ss.split("\n|\r\n|\r")

for(String s:sa)

System.out.println(s)

}

}

仍有问题的话,可以HI我,大家一起交流~!

下面引用的是jdk文档里的

XY X 后跟 Y

X|Y X 或 Y

(X) X,作为捕获组

所以|就表示或了哈。。

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

语法

stringObject.split(separator,howmany)

参数

separator    必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。  

howmany    可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。

返回值

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

如果想通过正则表达式,完成按引号中的逗号进行拆分,下面是代码,仅供参考:

var str = 'sdfs,dhf,skjdf","sdfsdfsdfsd","sdfe'

str.split(/\",\"/g)

----> ["sdfs,dhf,skjdf", "sdfsdfsdfsd", "sdfe"]


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7398876.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存