求匹配论坛用户名的表达式

chvalrous 2014-10-22 04:44:49
我爬取了一些微博数据和论坛数据,现在对论坛数据进行处理。
论坛数据文本中有很多用户名,格式为: @小摸包 @千颂二 @jifuajkls @二kfj三 之类的,可以为汉字、数字、字母的组合,一般用户名的后面都是空格,少量的用户名后为 逗号。
我刚接触正则,尝试了一些都没成功。跪求指点。
...全文
226 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chvalrous 2014-11-19
  • 打赏
  • 举报
回复
引用 6 楼 jeky198306 的回复:
抓取到的文件有乱码,转换下编码,分析下抓取到文件的特征,从中找规律
我分析了抓取的文本,文本为utf-8格式的,基本没有乱码情况啊。。。暂时用了取巧的方法,直接把 @ 去掉了,用户名也可能有用的。
jeky_zhang2013 2014-11-05
  • 打赏
  • 举报
回复
抓取到的文件有乱码,转换下编码,分析下抓取到文件的特征,从中找规律
chvalrous 2014-11-03
  • 打赏
  • 举报
回复
引用 4 楼 jeky198306 的回复:
看报的是什么错?
你好,错误是 Unmatched ) in regex; marked by <-- HERE in m/@锛圽S+) <-- HERE [\s,]/ at D:\pre -processing-BBS\tianya\Extract_with_symble.pl line 110.
jeky_zhang2013 2014-10-30
  • 打赏
  • 举报
回复
看报的是什么错?
chvalrous 2014-10-30
  • 打赏
  • 举报
回复
引用 2 楼 ehes73 的回复:
试试:
re.search('@(\S+)[\s,]')
谢谢,现在我是在perl中做匹配的,貌似没法用 re 模块。我原来使用过类似的匹配,也使用了您的情况,
$line =~s/@(\S+)[\s,]//g;
结果是直接报错,不知道是不是 utf-8 编码格式的原因。
ehes73 2014-10-28
  • 打赏
  • 举报
回复
试试:
re.search('@(\S+)[\s,]')
chvalrous 2014-10-22
  • 打赏
  • 举报
回复
文本为 utf-8 编码格式。

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

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