R正则表达式:如何提取按一定顺序包含两个字符的元素?
我试图使用正则表达式从字符向量中提取某些元素。例如,我想按顺序提取包含字符R正则表达式:如何提取按一定顺序包含两个字符的元素?,r,regex,text,R,Regex,Text,我试图使用正则表达式从字符向量中提取某些元素。例如,我想按顺序提取包含字符'abc'和'5'的所有元素。在'abc'之前、在'abc'和'5'之间以及'5'之后可以有字符 这是我以前想到的。我正在使用。表示任何事(或什么也不表示) 正确答案应该是 'abc5', 'aaabc3fs55' 我做错了什么 grep('abc.*5', testvec, value = TRUE) # [1] "abc5" "aaabc3fs55" 同时,你的.abc.5.的意思是:任何单个符号,
'abc'
和'5'
的所有元素。在'abc'
之前、在'abc'
和'5'
之间以及'5'
之后可以有字符
这是我以前想到的。我正在使用。表示任何事(或什么也不表示)
正确答案应该是
'abc5', 'aaabc3fs55'
我做错了什么
grep('abc.*5', testvec, value = TRUE)
# [1] "abc5" "aaabc3fs55"
同时,你的.abc.5.
的意思是:任何单个符号,abc,任何单个符号,5,任何单个符号
使用abc.*5
我指定在abc和5之间可以有多个字符,并且没有必要(在您的情况下)说明它们之后和之前发生的事情;i、 例如,没有约束,grep
只是在testvec
元素的某个地方查找abc.*5
grep('abc.*5', testvec, value = TRUE)
# [1] "abc5" "aaabc3fs55"