Python 找到一个';第'部分;带正则表达式的单词

Python 找到一个';第'部分;带正则表达式的单词,python,regex,re,Python,Regex,Re,我想找到一个句子中的章节和单词 sentence1 = 'chapter1' sentence2 = 'chapter 1' sentence3 = 'part1' sentence4 = 'part 1' sentence5 = 'party' re.search('((\bchapter\b|\bpart$\b)|[ ^a-z*,0-9]+)+', sentence5) 但是我不想听到像'part(y)这样的词。我的意思是代码应该找到前四个句子,但第五个句子不应该找到。$是行的结尾,而不

我想找到一个句子中的章节和单词

sentence1 = 'chapter1'
sentence2 = 'chapter 1'
sentence3 = 'part1'
sentence4 = 'part 1'
sentence5 = 'party'

re.search('((\bchapter\b|\bpart$\b)|[ ^a-z*,0-9]+)+', sentence5)

但是我不想听到像
'part(y)
这样的词。我的意思是代码应该找到前四个句子,但第五个句子不应该找到。

$是行的结尾,而不是单词边界


^((\b章)|(\b部分))\s?[0-9]

是的,这是正确的解决方案。谢谢你的解决方案。我把我的问题说错了一点。我应该在一个句子中找到所有的“part”和“chapter”单词,但可以是不同的类型。例如:“part hello world”“hello world part”“part:hello world”等。在开始和结束处强制使用边界,但允许使用可选的空格/数字
((\bchapper)|(\bpart))\s?[0-9]?\b
I