R正则表达式后跟标点符号后跟空格

时间:2016-03-05 22:45:13

标签: regex r

假设我有一个像这样的字符串:

x <- "i2: 32390. 2093.32: "

如何返回一个向量,该向量会为我提供一个数字后跟:.后跟空格的位置?

所以对于这个字符串,它将是

"2: ","0. ","2: "

1 个答案:

答案 0 :(得分:0)

你需要的正则表达式只是'\\d[\\.:]\\s'。使用stringr的{​​{1}}快速提取匹配项:

str_extract_all

产生

library(stringr)
str_extract_all("i2: 32390. 2093.32: ", '\\d[\\.:]\\s')

你可以将它与R的内置函数一起使用,它也可以正常工作。

匹配的内容:

  • [[1]] [1] "2: " "0. " "2: " 匹配一个数字,即数字
  • \\d设置要匹配的字符范围
    • [ ... ]匹配一段时间
    • \\.匹配冒号
  • :匹配一个空格。