1

我想用基于该字符串的数字部分的href url替换任何具有issue # 000...或(注意数字和井号之间的空格)的内容。issue #000...代表任意位数...

## 这是一个 MWE 字符串:

News <- readLines(n=5)
CHANGES

* Fixed bug see GitHub issue #12

* Fixed bug see GitHub issue # 111. (John Doe)

News

##这里是href url的片段

## Roots
roota <- "<a href=\"https://github.com/trinker/qdap/issues/"
rootb <- "\">"
rootc <- "</a>"

## 这是所需的输出

c("CHANGES",                                       
    "",                                              
    "* Fixed bug see GitHub <a href=\"https://github.com/trinker/qdap/issues/12\">issue #12</a>" ,             
    "",                                              
    "* Fixed bug see GitHub <a href=\"https://github.com/trinker/qdap/issues/111\">issue #111</a>. (John Doe)"
)

## 这是我提取碎片的初步尝试

gsub("(.)(issue)(.[#])(\\s*)([0-9]+)", "\\1", News)

## 抓住我几乎可以将它们粘贴在一起的数字

paste(roota, DIGIT_GRABBED, rootb, "issue #, DIGIT_GRABBED, rootc)

*我用正则表达式标记了这个,但请注意,R 正则表达式是一个特殊的品种,如果你回答,你应该熟悉 R。

4

1 回答 1

1

你可以简单地使用:

gsub(pattern="issue *# *([0-9]+)", replacement="<a href=\"https://github.com/trinker/qdap/issues/\\1\">issue #\\1</a>", x=News)
于 2013-09-05T19:15:48.073 回答