繁体   English   中英

如何限制正则表达式 python 中的空格?

[英]How do I limit spaces in regex python?

您好,我想在以下示例中限制空格:

Text_1 = 'Your email: Peter @gmail.com Please enter your spouse's email: Mandy@gmail.com'
Extracted_1 = 'Peter @gmail.com'
Target_1 = 'Peter @gmail.com' (correct)

regex_pattern = r'Your email: [\s]?(.+@[\w.,-]+)'

Text_2 = 'Your email: Please enter your spouse's email: Mandy@gmail.com'
Extracted_2 = 'Please enter your spouse's email: Mandy@gmail.com'
Target_2 = '' (Empty)

使用我当前的模式,它最终会提取所有内容,直到第二封电子邮件。 有没有办法限制空格数?

例如。 限制 2 个空格,因此第二个示例将返回空

谢谢!

您可以排除匹配 @ 以在匹配时不交叉它。

请注意, \\s也可以匹配换行符,而[\\w.,-]+是一个字符类,也仅允许例如,,,

\bYour email:[^\S\n]+([^@\n]+@[\w.,-]+)

正则表达式演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM