示例:List<int>
我正在尝试从上述包含括号的字符串中提取文本。我想从"example._AL(5)._._4500_GRE/Jan_2018"
开始提取所有内容。
输出应类似于:AL
答案 0 :(得分:1)
关于我们可以假设的内容存在一些疑问,但这是一些可以做出各种假设的变体。
1)单词()将删除第一个单词之前的所有内容,然后加上括号。
代码
x <- "example.AL(5)._._4500_GRE/Jan_2018"
sub("^.*?(\\w+\\()", "\\1", x)
## [1] "AL(5)._._4500_GRE/Jan_2018"
1a)或匹配一个单词,后跟(,然后是所有内容并提取出来:
library(gsubfn)
strapplyc(x, "\\w+\\(.*", simplify = TRUE)
## [1] "AL(5)._._4500_GRE/Jan_2018"
2)AL(或如果我们知道单词是AL
,则:
sub("^.*?(AL\\(.*)", "\\1", x)
## [1] "AL(5)._._4500_GRE/Jan_2018"
3)删除最多第一个点,或者如果我们知道要删除的部分是第一个点之前(包括第一个点):
sub("^.*?\\.", "", x)
## [1] "AL(5)._._4500_GRE/Jan_2018"
4)点分隔的字段如果输入的格式是点分隔的字段,我们可以像这样一次解析所有内容:
read.table(text = x, sep = ".", as.is = TRUE)
## V1 V2 V3 V4
## 1 example AL(5) _ _4500_GRE/Jan_2018