如何在Python中使用正则表达式提取格式化的字符串?

问题描述 投票:-1回答:1

我正在尝试在Python3中找到一个正则表达式,该正则表达式从输入文本中提取格式化的字符串:字符串的一般格式为:4个大写字母,后跟3个数字

输入:

"JFFC002    /0 EXÉRÈSE LÉS. RÉTROPÉRIT. COELIO 
KFFA001 /0 EXÉRÈSE T. PARAPHARYNGIENNE CERV.TOMIE LACA004   /0 O.S FRAC. ANT. SINUS FRONTAL AB. CORONAL LACA014 /0 O.S FRAC. BILAT. ANT. SINUS FRONTAL AB. CORONAL "

输出:

['JFFC002' , 'KFFA001' ,'LACA004', 'LACA014' ]

感谢您的帮助!

python regex extract
1个回答
2
投票

您可以按以下模式使用re.findall

re.findall

请参见s = '''"JFFC002 /0 EXÉRÈSE LÉS. RÉTROPÉRIT. COELIO KFFA001 /0 EXÉRÈSE T. PARAPHARYNGIENNE CERV.TOMIE LACA004 /0 O.S FRAC. ANT. SINUS FRONTAL AB. CORONAL LACA014 /0 O.S FRAC. BILAT. ANT. SINUS FRONTAL AB. CORONAL "''' import re re.findall(r'[A-Z]{4}[0-9]{3}', s) # ['JFFC002', 'KFFA001', 'LACA004', 'LACA014']

  • 匹配demo下方列表中存在的单个字符
    • [[A-Z]{4}量词-精确匹配4次
    • [{4}A-Z(索引65)和A(索引90)(区分大小写)之间的范围内的单个字符
  • 匹配Z下方列表中存在的单个字符
    • [[0-9]{3}量词-精确匹配3次
    • [{3}0-9(索引48)和0(索引57)(区分大小写)之间的范围内的单个字符
© www.soinside.com 2019 - 2024. All rights reserved.