Python 正则表达式中遗漏了什么?
我想用这个正则表达式Python 正则表达式中遗漏了什么?,python,regex,Python,Regex,我想用这个正则表达式 art\..*[A-Z].*\s 在此处提取粗体文本的步骤 一些文字bla艺术。100条重要文字其他文字bla 基本上,我想提取所有遵循此模式的文本: *art.* *number* *whatever* *first word that starts in uppercase* 但它并没有像预期的那样工作。有什么建议吗?您可以匹配艺术。然后匹配到第一个数字,然后匹配到第一个大写字符 \bart\.\D*\d+[^A-Z]*[A-Z]\S* 模式匹配 \bart\。
art\..*[A-Z].*\s
在此处提取粗体文本的步骤
一些文字bla艺术。100条重要文字其他文字bla
基本上,我想提取所有遵循此模式的文本:
*art.* *number* *whatever* *first word that starts in uppercase*
但它并没有像预期的那样工作。有什么建议吗?您可以匹配
艺术。
然后匹配到第一个数字,然后匹配到第一个大写字符
\bart\.\D*\d+[^A-Z]*[A-Z]\S*
模式匹配
匹配\bart\。
前面有单词边界艺术。
匹配非数字的0+倍,后跟1+个数字\D*\D+
匹配除A-Z以外的任何字符的0+倍[^A-Z]*
匹配字符A-Z,后跟可选的非空白字符[A-Z]\S*
(?)在左侧声明空白边界
\bart\.\D*\d+[^A-Z]*(?<!\S)[A-Z]\S*
\bart\.\D*\D+[^A-Z]*(?您可以匹配art.
然后匹配到第一个数字,然后匹配到第一个大写字符
\bart\.\D*\d+[^A-Z]*[A-Z]\S*
模式匹配
\bart\。
匹配艺术。
前面有单词边界
\D*\D+
匹配非数字的0+倍,后跟1+个数字
[^A-Z]*
匹配除A-Z以外的任何字符的0+倍
[A-Z]\S*
匹配字符A-Z,后跟可选的非空白字符
如果单词必须以A-Z开头,则可以在匹配大写字符A-Z之前使用(?)在左侧声明空白边界
\bart\.\D*\d+[^A-Z]*(?<!\S)[A-Z]\S*
\bart\.\D*\D+[^A-Z]*(?对于显示的示例,请尝试以下内容
\bart\..*?\d+.*?[A-Z]\w*
说明:添加上述内容的详细说明
\b ##mentioning word boundary here.
art\. ##Looking for word art with a literal dot here.
.*?\d+ ##Using non-greedy approach for matching 1 or more digits.
.*?[A-Z]\w* ##Using non-greedy approach to match 1 capital letter followed by word characters.
有了您展示的样品,请尝试以下内容
\bart\..*?\d+.*?[A-Z]\w*
说明:添加上述内容的详细说明
\b ##mentioning word boundary here.
art\. ##Looking for word art with a literal dot here.
.*?\d+ ##Using non-greedy approach for matching 1 or more digits.
.*?[A-Z]\w* ##Using non-greedy approach to match 1 capital letter followed by word characters.
它可能是r'\bart\.*?\b[A-Z]\S*.
或r'\bart\.*?\b[A-Z]\w*.
“但它没有按预期工作。有什么建议吗?”-我的建议是告诉我们“没有按预期工作”是什么意思。你可以使用\bart.\D*\D+[^A-Z]*[A-Z]\S+
它可能是r'\bart.*?\b[A-Z]\S*'
或r'\bart\.*?\b[A-Z]\w*'
“但它没有按预期工作。有什么建议吗?”-我的建议是告诉我们“没有按预期工作”是什么意思。您可以使用\bart\.\D*\D+[^A-Z]*[A-Z]\S+
我建议在结尾使用\S*
;否则,你的正则表达式将因一些文本bla艺术而失败。100个这是重要的文本其他文本bla
。我建议在结尾使用\S*
;否则,你的正则表达式将因一些文本bla艺术而失败。100个这是重要的文本其他文本bla
。