日期:2014-05-18  浏览次数:20415 次

一个后台验证电话号码的正则,,,,壮士请留步。。。。。。
string xjtel = this.xj_tel.Text.ToString().Trim();
  if (xjtel != "")
{
  if (!Regex.IsMatch(xjtel, "^(0/{2,3}-?/d{7,8})|(^(13[0-9]|15[0-9])/d{8}$)"))
  {
  ......
  }
  else
  {
  ......
  }
  }


这句正则错在哪啊???


无论电话号码是否输入正确,全报错。。。。求大侠,,,求源码,,,,求好心人,,,

------解决方案--------------------
可以控件来验证啊
------解决方案--------------------
可以用RegularExpressionValidator来验证你是错错误
------解决方案--------------------
"^(0/d{2,3}-?/d{7,8})|(^(13[0-9]|15[0-9])/d{8}$)"))
少了红色的这个d吧?
------解决方案--------------------
拜托楼主啊,/d是什么啊,应该是\d,另外字符串前加@,
 @"^(0\d{2,3}-?\d{7,8})|(^(13[0-9]|15[0-9])\d{8}$)"
------解决方案--------------------


你这个明显是哪里抄的一个吧。。\d表示数字,斜杠都不对。。根据LZ的意思改了一下。。。

C# code

Regex re = new Regex("(^(0\\d{2,3}-?\\d{7,8})$)|(^1[358]\\d{9}$)");