首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python用于查找股票代码(股票符号)

Python用于查找股票代码(股票符号)
EN

Stack Overflow用户
提问于 2021-12-03 07:22:53
回答 1查看 390关注 0票数 2

我正在尝试创建一个正则表达式,在文本体中找到代码符号。然而,要让一个人做我所需要的一切是有点困难的。

示例:

,这是一个$test,用来展示我想要匹配的东西。如果$YOU查看下面,您会发现我想要匹配的模拟代码列表($STOck符号)。

因此,在这种情况下,我想从以上几个方面进行匹配:

  • test
  • LIKE
  • YOU
  • FIND
  • STOck

我试着得到:

在"$“符号之后的任何单词(不包括$),大小写insensitive

  • any单词,即所有大写和3-6个字符之间的

我试过:

  • \b[A-Z]{3,6}\b,但这与几乎每一个word
  • \$[^3-6\s]\S*相匹配,但包括$,也忽略了所有没有美元符号的大写字母
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-03 07:42:51

请您试一试:

代码语言:javascript
运行
复制
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))

输出:

代码语言:javascript
运行
复制
['test', 'LIKE', 'YOU', 'FIND', 'STOck']

(?<=\$)是一个查找断言,它匹配一个领先的美元符号,而不包括结果中的匹配。

(确切地说,它只在美元符号之后就匹配边界,而不是字符本身。)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70210784

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档