语译分西 2019-12-12 16:52 采纳率: 50%
浏览 456
已采纳

如何用正则表达式筛选出评论里的用户名,并将其替换成字符串"Username"

爬油管评论,做语义分析,评论中有@别人进行回复。但是这些用户名对语义分析没有用处。如何将他们用正则表达式筛选出来,然后替换成字符串“Username“

1.第一种情况回复是有@打头的

@Yu Yu 你只是一个游客,人家本身的生活习惯使5使為你改变

@Chen Vergil 人地只懂 北上返大陆 唔 懂北角 在哪里 哈哈哈

@梁侃 另,我们广东人认为广东以北都系北方

2.有的情况是:没有@字符,只有对方用户名,但大多这种情况,是英文的用户名:

Chiu Alice 怎么可以这样

Su Chung 香港街头乱七八糟

如何匹配?筛选出来,然后用“Username”替换掉

  • 写回答

4条回答 默认 最新

  • JonathanYTR 2019-12-12 22:01
    关注

    你这个没法确定分出来的部分是否是完整的用户名吧,你的例子里@Yu Yu中间是包含空格的,中英文也都有,所以有可能把后面的正文也识别进来。
    想确定得到的部分是不是用户名只能去用户数据库查有无这个用户名,而且这是不可能的,所以我觉得你没必要这么做。
    具体怎么改善就得看你除了这个要求还有什么次要的要求了,我的想法是分出用户名后去爬一下主页,爬到了就按用户名处理并记录,但是没有at符号的就没办法了,只能看之前的记录里有没有存了。而且没有at符号的很难判断,比如“那个广东人是广东人”这句话里,你没法判断哪个广东人是用户名,那个是地区名,其他情况类似,所以针对处理第一种情况就好。
    或者你看下用户名标识中间的空格是不是空格,还是特殊字符,因为网页肯定也要区分的,应该会有对应的标记,没有就没辙了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 fluent的在模拟压强时使用希望得到一些建议
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退