关于用正则表达式求电话号码及网址格式的问题?

tcrct 2007-01-29 08:20:50
有以下一段代码:
for(var i=0;i<tab.rows.length-2;i++)
{
var cells1=tab.rows(i).cells(0).innerHTML;
cells1 = cells1.substring(0,cells1.length-1);
if(i==2)
{
var txt = tab.rows(i).cells(1).firstChild.value;
var regexp =RegExp("/^(\(0\d{2,3}\)|0\d{2,3}-)?\d{7,8}$/");
alert(txt.test(regexp));
if(regexp.test(txt))
{
alert("请输入正确的"+cells1);
return false;
break;
}
}
if(i==5)
{
var txt = tab.rows(i).cells(1).firstChild.value;
if(txt.search("^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$")!=0)
{
alert("请输入正确的"+cells1);
return false;
break;
}
}
if(i==6)
{
var txt = tab.rows(i).cells(1).firstChild.value;
if(txt.search("^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$")!=0)
{
alert("请输入正确的"+cells1);
return false;
break;
}
}
}

其中txt为文本框的值,但是只有判断i==5时才能有效,而其它均无效。请问这是为什么?是我的正则表达式写错了还是其他原因?
另,我想用AJAX返回一个页面的所有代码,如何实现?请指教,谢谢!!!
...全文
866 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
chunran 2007-01-31
  • 打赏
  • 举报
回复
745689
tcrct 2007-01-31
  • 打赏
  • 举报
回复
.....
hbhbhbhbhb1021 2007-01-29
  • 打赏
  • 举报
回复
alert那句不对
regexp.test(txt)
tcrct 2007-01-29
  • 打赏
  • 举报
回复
谢谢楼上的,是不是要改为这样:
var regexp =RegExp("/^(\\(0\\d{2,3}\\)|0\\d{2,3}-)?\\d{7,8}$/");
但不行呀,写一个不对的格式也没报错!麻烦再看看
hbhbhbhbhb1021 2007-01-29
  • 打赏
  • 举报
回复
写成RegExp这样的正则\符号需要转意,要写成"\\"

87,904

社区成员

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

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