javascript的exec和match用法,大神帮忙!

moon5284 2011-03-23 11:07:16
例如一个字符串 var page = "kkk kjjj lll kjk moon5284@126.com 594605440@qq.com "
里面可能含有n个邮箱,怎么提取出来?

var reg = /(\S)+[@]{1}(\S)+[.]{1}(\w)+/;
//var result = reg.exec(page);

var result = page.match(reg);

alert(result);

结果显示 【 moon5284@126.com,4,6,m 】不符合要求啊,该怎么写?
...全文
106 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
li1229363 2011-03-24
  • 打赏
  • 举报
回复

var page = "kkk kjjj lll kjk moon5284@126.com 594605440@qq.com.cn "
var reg = /\S+@\S+\.\w{2,3}\.?\w{1,2}/g;
var result = page.match(reg);
alert(result);


咱这个适应性更强一点。

适用于.com.cn或者co.us这种域名
汉尼拔 2011-03-24
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 kingwolf_javascript 的回复:]

邮箱的验证不要太复杂了,太复杂了容易过滤一些合格的邮箱
[/Quote]
++
有些邮箱命名几年前是不允许的,现在是允许的
kaifadi 2011-03-24
  • 打赏
  • 举报
回复

<script type="text/javascript">
var page = "kkk kjjj lll kjk moon5284@126.com.cn 594605440@qq.com";
var reg = /\w+@\w+\.\w+\.?\w+/g;
while ((result=reg.exec(page))!=null){alert(result[0]);}
</script>

我也练练手!按照#6说的邮箱验证别太严格,否则2个字符把很多有用的邮箱都给过滤没了!
hushicai 2011-03-23
  • 打赏
  • 举报
回复
var page = "kkk kjjj lll kjk moon5284@126.com 594605440@qq.com ";

var reg = /(\S)+[@]{1}(\S)+[.]{1}(\w)+/g;

var match = page.match(reg);

alert(match);

为match方法指定g标志,放回的结果中,就是各个匹配结果!!!
当match不指定方法时,返回的结果为:[0]是整个匹配结果。[1]~match.length为各个字匹配(也就是括号中的东东)!
knightzhuwei 2011-03-23
  • 打赏
  • 举报
回复

var page = "kkk kjjj lll kjk moon5284@126.com awsddasd 594605440@qq.com ";
var reg=/(?:\s)\w+@\w+\.\w+/g;
var result;
result = page.match(reg)
alert(result);
hongmei85 2011-03-23
  • 打赏
  • 举报
回复
		<script type="text/javascript">
<!--
var page = "kkk kjjj lll kjk moon5284@126.com 594605440@qq.com "
var reg = /(\S)+[@]{1}(\S)+[.]{1}(\w)+/g;
//var result = reg.exec(page);

var result = reg.exec(page);
while (result!=null){
alert(RegExp.lastMatch);
result = reg.exec(page)
}
//-->
</script>
浴火_凤凰 2011-03-23
  • 打赏
  • 举报
回复
邮箱的验证不要太复杂了,太复杂了容易过滤一些合格的邮箱
hch126163 2011-03-23
  • 打赏
  • 举报
回复
var page = "kkk kjjj lll kjk moon5284@126.com 594605440@qq.com ss@sf af.asdf sf@afd@asd.sadf afd@asd.sadf.afd"
var reg = /\w+@\w+\.\w+/g;
//var result = reg.exec(page);

var result = page.match(reg);
var result1 = page.match(/\S+[@]{1}\S+[.]{1}\w+/g);

alert(result+"\n"+result1);
Mr-Jee 2011-03-23
  • 打赏
  • 举报
回复
var page = "kkk kjjj lll kjk moon5284@126.com 594605440@qq.com "
var reg = /\S+[@]{1}\S+[.]{1}\w+/g;
//var result = reg.exec(page);

var result = page.match(reg);

alert(result);

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧