求人写个正则表达式

Airch 2012-04-01 03:49:07
RT,假如我有段文本如下:

string="@asdasd @3423423 @gfgdfgd";


我要匹配出@asdasd 和@3423423 以及 @gfgdfgd

也就是我要匹配出每个带@符号的字符串
...全文
115 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Airch 2012-04-01
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]

引用 10 楼 的回复:

只要是http://开头的 全部匹配

那这个就够了
(http):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?
[/Quote]

http://ww3.sinaimg.cn/thumbnail/7594018djw1drdb4lwgtvj.jpg

这样的链接没识别出来
Airch 2012-04-01
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]

引用 10 楼 的回复:

只要是http://开头的 全部匹配

那这个就够了
(http):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?
[/Quote]

再问个问题 我要匹配 #啊是打算# 这样的一段如何匹配,还请帮忙
EnForGrass 2012-04-01
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]

只要是http://开头的 全部匹配
[/Quote]
那这个就够了
(http):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?
moonwrite 2012-04-01
  • 打赏
  • 举报
回复
href="http://.+?"
Airch 2012-04-01
  • 打赏
  • 举报
回复
只要是http://开头的 全部匹配
EnForGrass 2012-04-01
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]

对了再问下,匹配所有http://链接的正则表达式是多少?
[/Quote]
(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?
看你要多完整的
参考http://dev.mjxy.cn/a-URL-regular-expression.aspx
Airch 2012-04-01
  • 打赏
  • 举报
回复
对了再问下,匹配所有http://链接的正则表达式是多少?
Mirror然 2012-04-01
  • 打赏
  • 举报
回复
(\\@)(.*?)(\\@)
试试
EnForGrass 2012-04-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

试试这个
\@\w+\b
[/Quote]

string pat = @"\@\w+\b";
MatchCollection matches = Regex.Matches(@"fdasfdas @asdasd fdsdfs @3423423 @gfgdfgd", pat);
List<string> topdata = new List<string>();
foreach (Match match in matches)
{
topdata.Add(match.Groups[0].Value);// @asdasd @3423423 @gfgdfgd
}
porschev 2012-04-01
  • 打赏
  • 举报
回复



Regex re = new Regex(@"@[^\s]+", RegexOptions.None);
MatchCollection mc = re.Matches("你要提取的字符串");
foreach (Match ma in mc)
{
//ma.Value就是你要的值
}


Airch 2012-04-01
  • 打赏
  • 举报
回复
现在不能结贴,等可以结贴了给你分
Airch 2012-04-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

试试这个
\@\w+\b
[/Quote]
OK了,谢谢
EnForGrass 2012-04-01
  • 打赏
  • 举报
回复
试试这个
\@\w+\b
Airch 2012-04-01
  • 打赏
  • 举报
回复
哪位大神帮帮忙

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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