如何将复杂的文本文档转换为单个字符串

问题描述 投票:0回答:1

我有一个手稿,并希望使用正则表达式从中提取所有引用。处理来自手稿的测试样本时,我开发了一个正则表达式-参见此处:Regex in R: How to extract citations from manuscript。它可以完美地在名为samp的示例上运行:

str_extract_all(samp, "\\([A-Za-z][^)]*\\d{4};|;\\s[A-Za-z][^)]*\\d{4}\\)|\\([A-Za-z][^)]*\\d{4}.*?\\)|\\b[A-Z][a-z].*\\([^A-Za-z)]\\w.*?\\)|\\b[A-Z][a-z].*\\(forthcoming\\)|\\b[A-Z][a-z].*\\(in preparation\\)|\\([A-Za-z][^);]*\\d{4}|(?<=;\\s)[A-Za-z][^);]*\\d{4}")

但是:正则表达式不能在实际的手稿上很好地工作(显然,手稿比示例大,并且可能具有比示例更复杂的内部结构),因为与示例不同,我无法将手稿转换成单个连贯的字符串。

我试图以此方式阅读文档:

read.table([my path], header = F,  sep = "\n", fill = F, stringsAsFactors = F, strip.white = T)

而且我已经使用paste将其融合在一起:

paste0(manuscript$V1, collapse = "")

但是结果对象仍然具有内部分隔,以防止正则表达式在整个文档中无缝运行。

那么,如何以构成单个不间断字符串的方式]读入或后期处理?>?

非常感谢您提供有关此问题的帮助。

我有一个手稿,并希望使用正则表达式从中提取所有引用。在手稿上测试样本的过程中,我开发了一个正则表达式-参见此处:R中的正则表达式:如何提取引文...

r regex text data-conversion
1个回答
0
投票

我们可以使用readLines来获取文件内容作为行列表,然后我们将其折叠为单个不间断的字符串。

© www.soinside.com 2019 - 2024. All rights reserved.