ずに手紙を見つける:使用grepの私はこれらのコードを持っている別の
x=c('a','a,b','a-c','ab')
y=c('a')
grep(y,x,ignore.case = T)
は結果が
> grep(y,x)
[1] 1 2 3 4
あるしかし、私は結果が "A" と、 "1 2 3" であることを期待します「a」が「ab」のように区切られていないことを除いて、何かまたは単に「a」で区切られています。 ありがとうございました!
ずに手紙を見つける:使用grepの私はこれらのコードを持っている別の
x=c('a','a,b','a-c','ab')
y=c('a')
grep(y,x,ignore.case = T)
は結果が
> grep(y,x)
[1] 1 2 3 4
あるしかし、私は結果が "A" と、 "1 2 3" であることを期待します「a」が「ab」のように区切られていないことを除いて、何かまたは単に「a」で区切られています。 ありがとうございました!
y
にワード境界を追加します。
x=c('a','a,b','a-c','ab')
y=c('a\\b')
grep(y,x,ignore.case = T)
# [1] 1 2 3
OPのは、それがの終わりになることができます「A」([^a-z]
)または(|
)は、次のいずれかの文字を持っていないことを伴うパターンを持って望んでいると文字列$
。
grep("a([^a-z]|$)", x)
#[1] 1 2 3
それとも我々はそれが文字列の末尾である句読点([[:punct:]]
)のいずれかが「A」または(|
)に従うことを特定したい場合は、その後、
grep("a([[:punct:]]|$)", x)
#[1] 1 2 3
セパレータは、それとは何の関係もありません。 'grep()'に文字 "a"だけを見せて、それをすべての文字列で見つけます。 –