我正在尝试创建一个正则表达式,在文本体中找到代码符号。然而,要让一个人做我所需要的一切是有点困难的。
示例:
,这是一个$test,用来展示我想要匹配的东西。如果$YOU查看下面,您会发现我想要匹配的模拟代码列表($STOck符号)。
因此,在这种情况下,我想从以上几个方面进行匹配:
我试着得到:
在"$“符号之后的任何单词(不包括$),大小写insensitive
。
我试过:
\b[A-Z]{3,6}\b
,但这与几乎每一个word\$[^3-6\s]\S*
相匹配,但包括$,也忽略了所有没有美元符号的大写字母发布于 2021-12-03 07:42:51
请您试一试:
import re
s = 'This is a $test to show what I would LIKE to match. If $YOU look below you will FIND the list of simulated tickers ($STOck symbols) I would like to match.'
print(re.findall(r'(?<=\$)\w+|[A-Z]{3,6}', s))
输出:
['test', 'LIKE', 'YOU', 'FIND', 'STOck']
(?<=\$)
是一个查找断言,它匹配一个领先的美元符号,而不包括结果中的匹配。
(确切地说,它只在美元符号之后就匹配边界,而不是字符本身。)
https://stackoverflow.com/questions/70210784
复制相似问题