【发布时间】:2013-09-02 17:09:36
【问题描述】:
我是一名休闲程序员,没有接受过正则表达式培训,所以我正在努力解决这个问题。我在这里找到了一个例子:
Is there an efficient way of returning a sub-section of a text string
其中 gsub 用于提取两个句点之间的数字。我需要做同样的事情,但是我正在寻找方括号之间的数字,就像在 tmpstr1 中一样。有人可以帮我理解 gsub 示例中的正则表达式,以便我可以修改它并让它工作吗?基本上,一个人如何阅读英文的正则表达式部分才有意义?我只是不明白。
谢谢
set.seed(1)
n <- 50
let1 <- LETTERS[runif(n, min=1, max=26)]
num <- round(runif(100, min=1, max=100))
let2 <- c(LETTERS[runif(n, min=1, max=26)], LETTERS[runif(n, min=1, max=26)])
tmpstr <- paste(let1, num, let2, sep=".")
tmpstr
gsub('.*[.](.*)[.].*','\\1',tmpstr)
tmpstr1 <- paste0(let1, "[", num, "]", let2)
tmpstr1
【问题讨论】:
-
这也将点替换为 [ ] 并且只涉及固定字符串:
sub(".", "]", sub(".", "[", tmpstr, fixed = TRUE), fixed = TRUE)`
标签: r