Skip to main content
 首页 » 编程设计

python之如何只返回正则表达式的特定部分

2024年08月25日28虾米哥

import re 
 
url = 'http://xxxxx.com/detail/028QCQZ?things_here' 
re.search("detail/([A-Z0-9]+)\?", url).group() 

返回:

'detail/028QCQZ?' 

我认为正则表达式中使用括号来指定返回字符串的哪一部分。

我只想获取代码:028QCQZ

请您参考如下方法:

您需要像这样使用第一个捕获组:

re.search("detail/([A-Z0-9]+)\?", url).group(1) 
//=> 028QCQZ 

如果您使用lookarounds,那么您可以像这样使用group():

re.search(r"(?<=detail/)[A-Z0-9]+(?=\?)", url).group() 
//=> 028QCQZ