这是一个更大更复杂数据集的最小示例,只是试图让我了解一些东西。
> grep("X10\\.1+",c("X10.10","X10.11","X10.12"))
[1] 1 2 3
现在我本来希望只2
返回,因为“+”应该是“前一个元素的 1 个或多个”。我认为逃避这个时期(我必须处理,所以想在例子中保留它)可能是导致问题的原因。
> grep("X101+",c("X1010","X1011","X1012"))
[1] 1 2 3
那么,我对'+'功能的理解是错误的吗?
结论:
谢谢@詹姆斯。所以我的理解是 + 是“前一个元素的另一个或多个”,而不是它的实际含义,即“前一个元素的一个或多个”。
11+ 会完成我的想法(在第一个 1 之后有一个额外的 1 或更多 1 等)。干杯