我正在尝试将字符串'hello world'与句子匹配。我认为这意味着它在句子中搜索该字符串并返回一个表示成功的值。
但是当我尝试这段代码时,打印出的所有内容都是“无”。
import re
sentence = "why do we write hello world so often?"
match1 = re.match('hello world', sentence)
print match1
答案 0 :(得分:2)
match
仅查看字符串的开头。
您应该使用search
代替:
match1 = re.search('hello world', sentence)
请注意,不应将regex用于此特定任务。 hello world
是一个非常具体的文本,您可以使用in
来检查它是否包含在字符串中。当您拥有模式时,应该使用正则表达式。
如果您坚持使用match
,则应将正则表达式更改为:
match1 = re.match('.*hello world', sentence)
现在.*
匹配所有内容,直到hello world
令牌,正则表达式“hello world”将匹配句子中的字符串“hello world”。