Python正则表达式在句子中查找特定内容

标签 python regex

我对正则表达式非常陌生,我正在以下句子中搜索:

OCEU0H - 多边开发公司发行的债务证券 A。 OCEU0J - 私有(private)公司发行的债务证券

输出应该是:- ['OCEU0H','OCEU0J']

OC 始终位于开头,EU 将是任何输入的国家/地区代码。

我的尝试是:- r'\b+(^(OC)\W+)\b+'

另外,请向我推荐正则表达式的最佳教程或文档。

最佳答案

您需要使用

\bOC\w+\b

请参阅regex demo

要匹配单词字符,您需要使用\w,而不是\W。请注意,如果您只想匹配 OC 之后的 ASCII 字母,则使用 [A-Za-z] 而不是 \w 更有意义>(任何字母、数字或_)。

您不应量化诸如 \b(字边界)之类的零宽度断言,也不应在 OC 之前使用 ^ anchor 作为 ^ 匹配 sting 的开头。

图案详细信息

  • \b - 单词边界
  • OC - 文字子字符串
  • \w+ - 1 个或多个单词字符(如果使用 [A-Za-z]+,则为任何 1+ ASCII 字母)
  • \b - 单词边界

关于Python正则表达式在句子中查找特定内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50792821/

相关文章:

regex - Perl - 迭代潜在的正则表达式匹配列表,直到找到一个,然后退出循环

regex - Google Analytics URL正则表达式代码

python - 根据用户输入从 python 中的 .txt 文件中提取信息

python - 如何在 Python 中使用 sklearn 对模型进行单一预测?

python - 升级到 Django 1.7。获取错误 : Cannot serialize: <storages. backends.s3boto.S3BotoStorage 对象

r - 使用正则表达式从 R 中的字符串中提取日期

python - 减法运算符python

获取字典中所有元素的 Pythonic 方法,落在两个键之间?

Javascript 正则表达式替换换行符

java - Android - PHP - 包含所有语言字母的正则表达式