正则表达式请教

CTO 2017-03-02 04:14:39
string url = "http://ttsite//edu.local/98860264334988123/764423733339324/n_nod.44288294254343:711abd1380?studentid=206634333971238";

请教如果用正则来得到下列三个字符串:98860264334988123, 764423733339324, 206634333971238

现在的写法是: Regex.Match(url, @"[0-9]+\/n").ToString().Replace("/n", string.Empty);

能否有一种更好的写法?
多谢!
...全文
142 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
EnForGrass 2017-03-03
  • 打赏
  • 举报
回复
引用 5 楼 CTO 的回复:
请问版主,有没有一种解析器可以通过设置的结果来自动生成正则表达式?
没有,结果一样,匹配的pattern也有可能有很多种
CTO 2017-03-02
  • 打赏
  • 举报
回复
请问版主,有没有一种解析器可以通过设置的结果来自动生成正则表达式?
xuzuning 2017-03-02
  • 打赏
  • 举报
回复
(?<=[/=])\d+
crystal_lz 2017-03-02
  • 打赏
  • 举报
回复
如果说 url 上面数字的个数是固定的话 直接 \d{15,} 就行了 你要的 数字都在15 或者以上个
巴士上的邂逅 2017-03-02
  • 打赏
  • 举报
回复
如果不用正则,可以这样
url.Split(new[] { '/', '=' }, StringSplitOptions.RemoveEmptyEntries).Where(s => Regex.IsMatch(s, @"^\d+$"));
巴士上的邂逅 2017-03-02
  • 打赏
  • 举报
回复
引用 楼主 CTO 的回复:
Regex.Match(url, @"[0-9]+\/n").ToString().Replace("/n", string.Empty);
能获得那三个字符串?

110,536

社区成员

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

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

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