目的は、正規表現を解析し、一致したパターンを置き換えることです。
次の例を検討してください。
data <- c("cat 6kg","cat g250", "cat dog","cat 10 kg")
cat
および のすべての出現箇所を特定する必要があります[0-9]
。これをする:
found <- data[grepl("(^cat.[a-z][0-9])|(^cat.[0-9])",data)]
found
[1] "cat 6kg" "cat g250" "cat 10 kg"
found
次のステップは、 の各要素を stringに置き換えることcat
です。スタックの質問 20219311 に従って、パッケージ (gsubfn) からgsub、sub、およびgsubfn()を試みました。
gsubfn("((^cat.[a-z][0-9])|(^cat.[0-9]))", "cat",data)
[1] "catkg" "cat50" "cat dog" "cat0 kg"
これは期待される結果ではありません:
[#] "cat" "cat" "cat dog" "cat"
私はポイントを逃していると思います。助けていただければ幸いです。ありがとう。