> ldata2[2]
[1] " \"pretty\": \"5:06 PM GMT on June 18, 2015\","
# Need to extract only the time information. In this case "5:06 PM GMT on June 18, 2015"
# My attempt
> time <- sub(".* :\"(.*)".*","\\1",ldata2[1])
这是我收到的错误消息:Error: unexpected symbol in "time <- sub(".* :\"(.*)"."
帮助赞赏
答案 0 :(得分:2)
library(stringr)
str_match(x, ': \\"(.*)\\"')[2]
#[1] "5:06 PM GMT on June 18, 2015"
cat
用作创建正则表达式模式的参考。
x <- " \"pretty\": \"5:06 PM GMT on June 18, 2015\","
cat(x)
"pretty": "5:06 PM GMT on June 18, 2015",
反斜杠消失了。我甚至没有在我的正则表达式中引用它们。模式': \\"(.*)\\"'
以冒号,空格和一组双引号开头。冒号和空格不需要特殊字符。双引号具有特殊的正则表达式含义,因此该集合使用两个反斜杠进行转义。接下来是捕获组和另一个转义双引号集。
使用sub:
sub('.*: \\"(.*)\\",', '\\1', x)
[1] "5:06 PM GMT on June 18, 2015"
答案 1 :(得分:2)
您的图案与字符串不匹配,因此不会替换任何内容。这是正确的模式:
sub(".*: \"(.*)\".*","\\1",ldata[2])