grepRaw
位于 base
包(package)。 说明
grepRaw
在原始向量 x
中搜索子字符串 pattern
匹配。
用法
grepRaw(pattern, x, offset = 1L, ignore.case = FALSE,
value = FALSE, fixed = FALSE, all = FALSE, invert = FALSE)
参数
pattern |
包含要在给定原始向量中匹配的 regular expression (或 |
x |
寻找匹配的原始向量,或者可以被 |
ignore.case |
如果 |
offset |
一个整数,指定搜索应开始的偏移量。必须是正的。行的开头被定义为该偏移量,因此 |
value |
合乎逻辑的。确定返回值:请参阅“值”。 |
fixed |
合乎逻辑的。如果 |
all |
合乎逻辑的。如果 |
invert |
合乎逻辑的。如果 |
细节
与 grep
不同,在原始向量 x
中寻找匹配模式。这尤其在 all =
TRUE
情况下有影响,例如,匹配空字符串的模式本质上是无限的,因此可能会导致意外的结果。
参数 invert
被解释为要求返回匹配的补码,这仅对 value =
TRUE
有意义。参数 offset
确定搜索的开始,而不是补集的开始。请注意,invert = TRUE
和 all =
TRUE
会将 x
分割成由模式分隔的片段,包括前导和尾随空字符串(因此,在这种情况下使用带有 "^"
或 "$"
的正则表达式可能会导致不太直观的结果)。
支持某些参数组合,例如 fixed = TRUE
与 value = TRUE
,但意义不大。
值
grepRaw(value = FALSE)
返回发生匹配的偏移量的整数向量。如果all = FALSE
,那么它将是长度零(不匹配)或长度一(第一个匹配位置)。
grepRaw(value = TRUE, all = FALSE)
返回一个原始向量,该向量或者为空(不匹配),或者为 x
的匹配部分。
grepRaw(value = TRUE, all = TRUE)
返回与匹配部分相对应的原始向量列表(可能为空)。
例子
grepRaw("no match", "textText") # integer(0): no match
grepRaw("adf", "adadfadfdfadadf") # 3 - the first match
grepRaw("adf", "adadfadfdfadadf", all=TRUE, fixed=TRUE)
## [1] 3 6 13 -- three matches
来源
除fixed = TRUE
外,均使用 Ville Laurikari (https://github.com/laurikari/tre/) 的 TRE 库。
也可以看看
regular expression(又名regexp
)了解模式规范的详细信息。
grep
用于匹配字符向量。
相关用法
- R grep 模式匹配和替换
- R groupGeneric S3组通用函数
- R grouping 分组排列
- R getwd 获取或设置工作目录
- R getDLLRegisteredRoutines DLL 中 C/Fortran 例程的反射信息
- R gzcon 通过连接(解)压缩 I/O
- R get 返回命名对象的值
- R gc 垃圾收集
- R gl 生成因子水平
- R getLoadedDLLs 获取当前会话中加载的 DLL
- R gc.time 报告垃圾收集所花费的时间
- R gettext 翻译短信
- R gctorture 酷刑垃圾收集者
- R getNativeSymbolInfo 获取一个或多个本机 (C/Fortran) 符号的说明
- R file.path 构造文件路径
- R vector 向量 - 创建、强制等
- R lapply 对列表或向量应用函数
- R dump R 对象的文本表示
- R Sys.getenv 获取环境变量
- R rank 样本排名
- R pushBack 将文本推回连接
- R strsplit 分割字符向量的元素
- R seq.Date 生成规则的日期序列
- R invisible 将打印模式更改为不可见
- R noquote “无引号”字符串打印类
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Pattern Matching for Raw Vectors。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。