Python 仅当满足特定长度标准时提取单词
我需要提取一个单词后的关键字只有当这个词是<20个字符长Python 仅当满足特定长度标准时提取单词,python,regex,Python,Regex,我需要提取一个单词后的关键字只有当这个词是
my_regex = re.compile(r'(keyword)\s*(\S{0,20}$))
例如:
keyword anbc123
将提取关键字
和anbc123
然而,下面不应给出任何结果
keyword anbc123nmnmnmnmnmnmnmnmnmnmn
这很有效
但是,由于单词following关键字的长度小于20个字符,下面的方法也应该有效。如何修复正则表达式?我知道$是字符串的结尾
keyword abnc 1234
预期结果:
关键字abnc
您可以使用\b
代替$
,\b
匹配“单词边界”,即单词的开头或结尾。在这种情况下,它将匹配单词的结尾或字符串的结尾
(keyword)\s*(\S{0,20})\b
请尝试(关键字)\s*(\s{1,20})(?!\s)
,请参阅。