Python正则表达式获取所有内容,直到字符串中的第一个点

位置:
find = re.compile("^(.*)\..*")
for l in lines:
    m = re.match(find, l)
    print m.group(1) 

我想对字符串中的任何内容进行正则表达式,直到第一个点为止。

[email protected],我想a@b
[email protected],我想a@b
[email protected],我想a@b

我的代码给了我...

应该找到什么,以便只得到a @ b?

罗希特·贾恩(Rohit Jain):

默认情况下,所有量词本质上都是贪婪的。从某种意义上说,他们将尝试消耗尽可能多的字符串。您可以在它们?添加一个使它们不愿意

find = re.compile(r"^(.*?)\..*")

如评论中所述,如果您的字符串中没有句点,则此方法将失败因此,这取决于您希望它如何表现。但是,如果要在这种情况下获取完整的字符串,则可以使用否定的字符类:

find = re.compile(r"^([^.]*).*")

遇到第一个句点或字符串结尾时,它将自动停止。


另外,您也不想使用re。match()那里。回覆。search()应该很好。您可以将代码修改为:

find = re.compile(r"^[^.]*")

for l in lines:
    print re.search(find, l).group(0)

ideone演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

正则表达式在第一个管道后获取所有字符串

是否有正则表达式可以删除字符串中除第一个字母之外的逗号后的所有内容

Python正则表达式找到子字符串和第一个空格之间的所有内容

正则表达式,在第一个单词之后获取所有字符,直到空格或输入

正则表达式以精确匹配字符串中第一个点之后的数字

正则表达式匹配,直到第一个数字出现在python中的字符串中

正则表达式-在第一个逗号之前获取所有内容-python

正则表达式搜索并grep字符串中第一个关键字和第二个关键字的第二次出现之间的所有内容 - Python

如何使用正则表达式从jQuery中的URL获取第一个查询字符串?

正则表达式从字符串中获取数字的第一个实例

正则表达式,用于匹配带空格的字符串,直到第一个“ =”

PHP中的正则表达式:将字符串中第一个单词之后的所有单词截断,并将所有单词截断为第一个字符

正则表达式在字符串中的第一个和最后一个非点的位置

正则表达式在第一个斜杠之前获取所有内容,除了引号之间

正则表达式获取第一个数字之前的所有内容

匹配所有内容,直到可选字符串(Python正则表达式)

正则表达式在字符串的第一个索引处替换除减号字符“-”之外的所有无效字符

使用正则表达式获取字符串的第一个参数

Javascript正则表达式-在子字符串之后获取第一个单词

正则表达式在第一个OU =之后获取字符串

返回第一个匹配正则表达式的字符串

如何不匹配此正则表达式中的第一个空字符串?

字符串正则表达式中的第一个非零值

正则表达式需要匹配字符串中的第一个路径而不是后续路径

使用正则表达式删除以数字开头的字符串中的第一个单词

正则表达式查找字符串中的第一个字母

使用正则表达式捕获字符串中的第一个单词。爪哇

正则表达式捕获字符串,该字符串具有换行符直到(第一组)字符的第一个实例

正则表达式获取字符串中其他字符的第一个数字