我有以下代码:

replies = re.findall(r'@([^\\s]+)', string_content_here)


我想做的是在@符号后找到所有用户名。我只想在空格,逗号,感叹号和问号之前找到@字符串。

例子:

@Spindel <--- Should return Spindel
@Spindel, <--- Should return Spindel
@Spindel! <--- Should return Spindel
@Spindel? <--- Should return Spindel
@gmail.com <--- I don't want this at all

最佳答案

r'@([\w]+)(?:$|[ ,!?])'


?:可以使第二组“不捕获”,因此您只能在结果中获得所需的名称。

10-08 08:10