首页 > 解决方案 > 在 R 中提取正则表达式

问题描述

我是 R 新手,但习惯于在 Perl 中进行正则表达式,我正在尝试使用正则表达式从我下载的文件中提取信息。这是不起作用的:

regex <- "([\\w\\.\\,]{1,10})[ ]*?([\\w\\d-]*).*?(\\d{6}).*?(\\d\\d\\d\\d\\-\\d\\d\\-\\d\\d)(.*)"
line <- "allied          8-K         927454      2020-01-21  edgar/data/0001683168-20-000194.txt"
grep(regex, line, value = TRUE, perl = TRUE)

当我运行代码时,它会返回整行。

我想要一个返回“alied”、“8-K”、“927454”、“2020-01-21”和“edgar/data/0001683168-20-000194.txt”的列表(或类似列表)

我也试过

str_extract_all(line, regex)

结果相同。我已经在 regex101.com 测试了我的模式,它在那里工作得很好。

标签: rregex

解决方案


推荐阅读