删除以方括号开头的任何字符串

时间:2017-07-30 15:10:27

标签: r regex

我在R中有以下向量:

myvec <- c("1.80 m (5 ft 11 in)[2]", "1.81 m (5 ft 11 1⁄2 in)[2]", "1.86 m (6 ft 1 in)[2]", "1.75 m (5 ft 9 in)[2][3][4]")

我想删除任何以“[”开头的内容,以便我最终得到:

myvec_clean <- c("1.80 m (5 ft 11 in)", "1.81 m (5 ft 11 1⁄2 in)", "1.86 m (6 ft 1 in)", "1.75 m (5 ft 9 in)")

我尝试过以下内容,但它只删除了第一种情况:

gsub("\\[[\\d-]\\]+", "", myvec) 

1 个答案:

答案 0 :(得分:1)

尝试:

gsub("\\[[^\\]]+\\]", "", myvec, perl=T)

这会删除方括号内的任何内容,包括括号。它应该产生以下结果:

# [1] "1.80 m (5 ft 11 in)"     "1.81 m (5 ft 11 1⁄2 in)" "1.86 m (6 ft 1 in)"      "1.75 m (5 ft 9 in)" 

我希望这会有所帮助。