所以我有这个字符串:

[email protected] !~shaz@ PRIVMSG #Rizon :ohai. New here. registered 10 mins ago, have not got an email. Addy is correct. My email is working fine.


我希望正则表达式找到!〜shaz @,所以我使用此r“!。+ @”
但后来找到了

[email protected] !~shaz@


我记得。我希望它能将它们分开查找,并用特定的字母代替。.对此的任何帮助
是的,如果您能给我一些适用于Python的正则表达式,我将不胜感激:D

最佳答案

默认情况下,量词在本质上是贪婪的,它们会尽可能地匹配。这就是为什么您的正则表达式匹配到最后一个@的原因。

您可以使用勉强的量词(在?之后添加+)在第一个@处停止:

r"!.+?@"


或者,您也可以使用negated字符类,它将自动在第一个@处停止:

r"![^@]+"


选择对您来说更容易理解的内容。

关于python - 如何使Regex分别选择单词,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14914804/

10-11 20:09