2017-06-19 3 views
0

私は、データフレームを持っている、と私は私が使用して特別な文字を見つけたい:greplを使用して特別な文字を検索していますか?

example$bb <- ifelse(grepl("*****", example$aa)==T, 1, 0) 

しかし、Rは言う:

Error in grepl("*****", example$aa : 
invalid regular expression, reason 'Invalid use of repetition operators' 

任意の提案? 私は*****のシンボルを書く方法?

+1

'grepl( '**'、 '**'、固定= TRUE)' –

+0

を検索するためのエスケープメタ文字/を使用し、メタ文字です'ifelse'、' grepl( "*****"、example $ aa)== T'のように、 '== T'を' grepl( "*****"、example $ aa ) 'で十分です。また、 'T'を上書きすることができるので、' T'と省略するのではなく、 'TRUE'を書き出すほうがよいでしょう。したがって、 'T < - FALSE'は有効な文です。 – lmo

+0

ありがとう。 –

答えて

0

*はへのあなたの最初の引数には、それ

grepl('/*', '***') 
[1] TRUE 
+4

スラッシュではなく、バックスラッシュが必要です。そしてあなたはそれらの2つが必要です。 d.bによって提案された 'fixed = TRUE'引数。 OPは一束のアスタリスクを探しているのでここでは好ましい。そうしなければ、多くのエスケープ文字につながるでしょう。 – lmo

+0

ありがとう、それは働いた! –

関連する問題