我有一个像这样的字符串向量:

test <- c("A1.7","A1.8")

我想使用正则表达式在句点和数字之间插入A1c<=,如下所示:

A1.A1c<=7 A1.A1c<=8

我浏览了一些问题,发现@ zx8754类似的问题;我尝试修改他们问题中的答案,但没有运气

insert <- 'A1c<='
n <- 4
old <- test
lhs <- paste0('([[:alpha:]][[:digit:]][[:punct:]]{', n-1, '})([[:digit:]]+)$')
rhs <- paste0('\\1', insert, '\\2')
gsub(lhs, rhs, test)

谁能指导我如何正确执行此操作?

最佳答案

另一种模式:

gsub("\\.(\\d+)", "\\.A1c<=\\1", test)

    ## [1] "A1.A1c<=7" "A1.A1c<=8"

Regex Demo

关于r - 在R的句点和数字之间插入字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59849090/

10-12 17:19