我有一个字符串集合,例如,采用以下形式:
(GOOGL) [ST]S (partial) 02/01/2024 03/01/2024 $1,001 - $15,000
(PHG) [ST]P 02/12/2024 03/01/2024 $1,001 - $15,000
(PFE) [ST] P 02/12/2024 03/01/2024 $1,001 - $15,000
(UL)
[ST]S 02/12/2024 03/01/2024 $1,001 - $15,000
我想找到一种模式来返回第三组字符(例如,第一行中的“S”),每行不被括号或括号包围。
下面的模式获取每个大写字符串(例如,GOOG、ST、S):
([A-Z]+)
我如何分别从每一行返回“S”、“P”、“P”和“S”,它们永远不会被圆括号或方括号包围(或者,至少有一个,有时两个,之前或之后有一个空格)?
正则表达式模式适用于此:
import re
pattern = re.compile(r'\([^)]*\)\s*\[[^\]]*\]\s*([A-Z])\s')