如何使用R中的label
访问所有与分组相匹配的匹配(即gregexpr()
)?
s <- "aaa123bbb345ccc"
p <- "(?<label>\\d+)"
m <- gregexpr(p, s, perl = TRUE)
我有兴趣在m中打印匹配但引用组名<label1>
。这可以在C#中轻松完成,但我在R中挣扎,我无法弄清楚如何从CRAN文档中做到这一点。
编辑:G Grothendieck所要求的C#代码:
string s = "aaa123bbb345ccc";
string p = @"(?<label>\d+)";
Regex r = new Regex(p);
Match m = r.Match(s);
if (m.Success)
{
Console.WriteLine(m.Groups["label"].Value);
}
答案 0 :(得分:1)
这将仅返回与label
关联的子字符串。
st <- attr(m[[1]], "capture.start")[, "label"]
len <- attr(m[[1]], "capture.length")[, "label"]
substring(s, st, st + len - 1)
## [1] "123" "345"