跪求一个正则表达式....

qqhahazxxqq 2017-10-26 04:32:35
跪求大神帮下忙,谢谢了。
13632958302
13632958302/13632958302
13632958302/5832091
13632958302/0851-5832091
5832091

手机和座机的。
...全文
381 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
本人QQ-554433626 2017-11-29
  • 打赏
  • 举报
回复
(^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$)|(^((\(\d{3}\))|(\d{3}\-))?(1[358]\d{9})$)
porschev 2017-11-29
  • 打赏
  • 举报
回复
不知道你需求是不是只是要把这些查找出来,如果是最简单的就是这个

Regex re = new Regex(@"\d{11}|\d{7}|\d{4}\-\d{7}", RegexOptions.Multiline);
MatchCollection mc = re.Matches("text");
foreach (Match ma in mc)
{
}
  • 打赏
  • 举报
回复
@"^(((\d{11}|(\d{3,4}-)?\d{7,8}))(/(\d{11}|((\d{3,4}-)?\d{7,8})))*)$"
再修正下,区域号码可能是3位或4位的
  • 打赏
  • 举报
回复
@"^(((\d{11}|(\d{4}-)?\d{7,8}))(/(\d{11}|((\d{4}-)?\d{7,8})))*)$"
座机现在是8位的,你的却是7位,所以匹配座机部分是用了{7,8} 然后这个正则还匹配 0851-5832091/13632958302
全栈极简 2017-11-29
  • 打赏
  • 举报
回复
(?is)(\d{11}|\d{4}\-\d{7}|\d{7})
weixin_40706162 2017-11-28
  • 打赏
  • 举报
回复
^ 匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。 \d 数字:[0-9] 电话11位 \d{11}
秋的红果实 2017-10-26
  • 打赏
  • 举报
回复
更正

string input = "13632958302djfjd13632958302/13632958302irueue13632958302/5832091HDFEUYR82#$13632958302/0851-5832091HFSJ92j5832091vvvvbnn0851-5832091ssdfg";
MatchCollection mColl = Regex.Matches(input, @"^\d{11}|\d{11}/\d{11}|\d{11}/\d{7}|\d{11}/\d{4}-\d{7}|\d{4}-\d{7}|\d{7}");
foreach(Match m in mColl)
{
    listBox1.Items.Add(m.ToString());
    //MessageBox.Show(m.ToString());
}


测试通过
秋的红果实 2017-10-26
  • 打赏
  • 举报
回复
\d{11}|\d{11}/\d{11}|\d{11}/\d{7}|\d{11}/\d{4}-\d{7}|\d{7}|\d{4}-\d{7}
qqhahazxxqq 2017-10-26
  • 打赏
  • 举报
回复
qqhahazxxqq 2017-10-26
  • 打赏
  • 举报
回复
引用 楼主 qqhahazxxqq 的回复:
跪求大神帮下忙,谢谢了。 13632958302 13632958302/13632958302 13632958302/5832091 13632958302/0851-5832091 5832091 手机和座机的。
还有 0851-5832091

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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