qq_40220168
猥鸽
2020-01-03 10:54
采纳率: 100%
浏览 628

正则表达式‘.*?’是不包括冒号‘:’吗

图片说明

  • 如题(第一次发问,不是很懂这个markdown 见谅)。我想用正则表达式提取这个A标签的文本,也就是‘Jason Mraz’,但是我发现第一段代码是可以正确提取的,第二段则不行,这个冒号不加在正则表达式里面就不会被我的.*?匹配到吗?为此我特地复习了一下‘.’的匹配规则:“匹配除 "\n" 之外的任何单个字符”似乎冒和号没什么关系。 ``` re.findall('表演者:.*?>(.*?)', html.text, re.S)[0]

re.findall('表演者.*?>(.*?)', html.text, re.S)[0]

推理下来就是正则表达式‘.*?’是匹配不到冒号‘:’是这样吗?总感觉不太对,来论坛求助大佬解决
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • YL3126
    会飞的小蜗 2020-01-03 10:58
    已采纳

    .*? 表示匹配任意数量的重复,但是在能使整个匹配成功的前提下使用最少的重复

    点赞 评论

相关推荐