首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用python中的regex从段落块获取所需的字段值

使用python中的regex从段落块获取所需的字段值
EN

Stack Overflow用户
提问于 2020-12-01 16:58:38
回答 1查看 42关注 0票数 0

我有一个文本文件,从中提取了这两个段落块。下面给出了文本示例。

文本示例:

EXONERAR,com validade de 19 de agosto de 2020 de - NILSON de Centralizada de Servi,ID FUNCIONAL 2100423-4,do cargo em comiss o o de Coordenador,símbolo DAS-8E 212,da Coordenadoria de Gest o Centralizada DE Servi os,da Superintend de Gest de Gest,e 113da Secretaria de Logícontar E 214/code>,E 115>.过程编号SEI-120001/010643/2020 NADIA NAKAMURA VIEIRA,ID 5099589-8,do cargo em comiss o de Assessor Especial,símbolo DG,da Secretaria de Estado de Planejamento e Gest oE 228。过程编号SEI-150001/004627/2020 EXONERAR,com validade a contar de 26 de novembro de 2020,BRUNO RAFAEL ROCHA COSTA,ID FUNCIONAL . 5108093-1,do cargo em comiss o de Assessor,símbolo DAS-7E 240,E 141 da portos de Planejamento e Gest oE 242,da Presid,da Superintend de Des- portos do Estado do de里约热内卢- SUDERJ,da Secretaria de Es- tado de Esporte de Esporte,<>code E143/code>Lazer>Lazer>Laze244<>;3 0 0 0 2/0 0 4 11 /2 0 2 0 . EXONERAR,com validade a de 16 de novembro de 2020,LUIS HENRIQUE FERREIRA de AQUINO,ID FUNCIONAL 编号1914315-0,do cargo em comiss o de Assistente II,símbolo DE 6E 256,da E 157/code>秘书a de Estado de Planejamento e Gest oE 258。过程编号SEI120001/014825/2020:

在上面的文本块中,我只想将粗体值作为一个单独的行从每个段落中获取。

我已经尝试过的

代码语言:javascript
复制
r"\b(?:(?:EXONERAR|d[ae]|por|símbolo)\s([^,]+?)(?: e Gestão)?,|\b(?!SEI\b)([A-Z\d]+-\s*\d+)|SEI-\s*([\d /]+)\b)"

当前输出:

https://regex101.com/r/FCimoW/1

我的当前输出几乎没有问题,但问题是不匹配所有需要的部分,例如大写名称部分。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-01 17:09:01

对于粗体大写部分,您可以添加一个替换,匹配一个或更多大写单词,用空格char或连字符分隔,并以逗号结尾。

代码语言:javascript
复制
\b([A-Z]+(?:[\s-]+[A-Z]+)+(?=,)

完整模式的Regex演示

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

https://stackoverflow.com/questions/65094987

复制
相关文章

相似问题

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