正则表达式:匹配特定单词后的所有内容

我正在使用Python,并且想在test遇到句号(句号)或空格之前匹配所有单词。

text = "test : match this."

目前,我正在使用:

import re

re.match('(?<=test :).*',text)

上面的代码不匹配任何内容。我需要match this作为我的输出。

回答:

如果您只是从字符串中获取子集,我不明白为什么要使用正则表达式

运作方式相同:

if line.startswith('test:'):

print(line[5:line.find('.')])

例:

>>> line = "test: match this."

>>> print(line[5:line.find('.')])

match this

正则表达式速度慢,设计笨拙且难以调试。肯定有occassions使用它,但如果你只是要提取的文本test:.,然后我不认为是这些场合之一。

参见:https :

//softwareengineering.stackexchange.com/questions/113237/when-you-should-not-

use-regular-

expressions

为了获得更大的灵活性(例如,如果要遍历要在字符串开头找到的字符串列表,然后将其索引出去),请用替换索引中的5(“

test:”的长度)len(str_you_looked_for)

以上是 正则表达式:匹配特定单词后的所有内容 的全部内容, 来源链接: utcz.com/qa/428120.html

回到顶部