メモ:emojiの扱い方は分からないけどとりあえずrmarkdown::render()はできるようになった

これがrmarkdownにマージされたので、gregexpr()のエラーはとりあえずなんとかなりました。

これでやっとblogdown使える…!

ちなみに、

で書いたやつは、kohskeさんのツイートで知ったんですが、

stringrパッケージのstr_replace()/str_replace_all()が置き換えに使う文字列だけではなく変換する関数を指定することもできて、これがほぼ求めていたものでした。

text <- c("A1", "B1", "CC")
pattern <- "[A-Z][0-9]"

# マッチした文字列は小文字に変換され、マッチしなかった文字列はそのまま
stringr::str_replace_all(text, pattern, tolower)
#> [1] "a1" "b1" "CC"

ただし、str_replace()patternにマッチしなかったときはNAを返してしまうというstr_sub()の仕様?を引き継いでしまっています。

stringr::str_replace(text, pattern, tolower)
#> [1] "a1" "b1" NA

とはいえ、たぶん、ほとんどのケースでマッチする文字列はすべて置き換えたいはずなので、str_replace_all()の方を使っておけば大丈夫です。

これは、stringiには直してもらって、stringrにもそのうち取り込まれるはずです。たぶん。