首页 > 解决方案 > 在 str_extract() 之后将字符向量转换为 data.frame

问题描述

我有一个数据框:

head(objeto)
                                                      Edital
1                          GOVERNO DO ESTADO DE MINAS GERAIS
2 SECRETARIA-GERAL DA GOVERNADORIA DO ESTADO DE MINAS GERAIS
3                         EDITAL DA CONCORRÊNCIA Nº 001/2012
4                                        EDITAL DE LICITAÇÃO
5                                  CONCORRÊNCIA Nº. 001/2012
6                                      TIPO: TÉCNICA E PREÇO

我想在其中找到正则表达式“Objeto”,所以:

regex.objeto <- "(?<=Objeto: )([^.]+)"
objeto <- str_extract(edital, regex.objeto)

objeto

[1] "CONTRATAÇÃO DE EMPRESA PARA A PRESTAÇÃO DE SERVIÇOS\", \"ESPECIALIZADOS DE AFERIÇÃO DO DESEMPENHO E DA QUALIDADE DA\", \"CONCESSIONÁRIA MINAS ARENA GESTÃO DE INSTALAÇÕES ESPORTIVAS\", \n\"S"

结果是一个字符向量,但我想要一个没有这些符号的数据框\", \

我在想结果是这样的:

"CONTRATAÇÃO DE EMPRESA PARA A PRESTAÇÃO DE SERVIÇOS ESPECIALIZADOS DE AFERIÇÃO DO DESEMPENHO E DA QUALIDADE DA"

谢谢你们!

标签: rdataframecharacterstringr

解决方案


也许您可以使用gsub从字符串中删除双引号和"\n".

objeto <- gsub('"|\n|,', '', objeto)

返回:

objeto
#[1] "CONTRATAÇÃO DE EMPRESA PARA A PRESTAÇÃO DE SERVIÇOS ESPECIALIZADOS DE AFERIÇÃO DO DESEMPENHO E DA QUALIDADE DA CONCESSIONÁRIA MINAS ARENA GESTÃO DE INSTALAÇÕES ESPORTIVAS S"

这也可以写成:

objeto <- gsub('["\n,]', '', objeto)

str_remove_allstringr图书馆使用

stringr::str_remove_all(objeto, '[\n",]')

这是一个快捷方式str_replace_all

stringr::str_replace_all(objeto, '[\n",]', '')

推荐阅读