アルファベットの大文字、小文字の変換や前後へ文字を付与するのに便利なパッケージの紹介です。
参考までに文字列操作の記事を紹介します。
・Rで解析:文字列操作と検索「grep」と置換「gsub」コマンドの紹介
https://www.karada-good.net/analyticsr/r-97
パッケージバージョンは0.11.1。実行コマンドはwindows 11のR version 4.1.2で確認しています。
パッケージのインストール
下記コマンドを実行してください。
#パッケージのインストール
install.packages("snakecase")
コマンドの紹介
詳細はコマンド、パッケージのヘルプを確認してください。
#パッケージの読込み
library("snakecase")
###データ例の作成#####
#大文字,全て小文字空白,全て小文字アンダーバー
TestText <- c("KARADA-GOOD", "ka ra da.good", "karada_good")
########
#文字を文字列の前後に追加:to_any_caseコマンド;prefix,postfixオプション
to_any_case(TestText, prefix = "USER://", postfix = ".exe")
[1] "USER://karada_good.exe" "USER://ka_ra_da_good.exe" "USER://karada_good.exe"
#条件を指定して文字列を変換:to_any_caseコマンド;ToCaseオプション
#変換設定:以下が設定可能
ToCase <- c("snake", "small_camel", "big_camel", "screaming_snake",
"parsed", "mixed", "lower_upper", "upper_lower",
"all_caps", "lower_camel", "upper_camel", "none")
for(i in seq(ToCase)){
cat(paste0(ToCase[i], ":",
to_any_case(TestText, case = ToCase[i],
prefix = "https://", postfix = ".net"), "\n"))
}
#結果
snake:https://karada_good.net
snake:https://ka_ra_da_good.net
snake:https://karada_good.net
small_camel:https://karadaGood.net
small_camel:https://kaRaDaGood.net
small_camel:https://karadaGood.net
big_camel:https://KaradaGood.net
big_camel:https://KaRaDaGood.net
big_camel:https://KaradaGood.net
screaming_snake:https://KARADA_GOOD.net
screaming_snake:https://KA_RA_DA_GOOD.net
screaming_snake:https://KARADA_GOOD.net
parsed:https://KARADA_GOOD.net
parsed:https://ka_ra_da_good.net
parsed:https://karada_good.net
mixed:https://Karada_Good.net
mixed:https://ka_ra_da_good.net
mixed:https://karada_good.net
lower_upper:https://karadaGOOD.net
lower_upper:https://kaRAdaGOOD.net
lower_upper:https://karadaGOOD.net
upper_lower:https://KARADAgood.net
upper_lower:https://KAraDAgood.net
upper_lower:https://KARADAgood.net
all_caps:https://KARADA_GOOD.net
all_caps:https://KA_RA_DA_GOOD.net
all_caps:https://KARADA_GOOD.net
lower_camel:https://karadaGood.net
lower_camel:https://kaRaDaGood.net
lower_camel:https://karadaGood.net
upper_camel:https://KaradaGood.net
upper_camel:https://KaRaDaGood.net
upper_camel:https://KaradaGood.net
none:https://KARADA_GOOD.net
none:https://ka_ra_da_good.net
none:https://karada_good.net
#個別に適応コマンド一覧
to_snake_case(TestText)
[1] "karada_-_good" "ka_ra_da_._good" "karada_good"
to_screaming_snake_case(TestText)
[1] "KARADA_-_GOOD" "KA_RA_DA_._GOOD" "KARADA_GOOD"
to_parsed_case(TestText)
[1] "KARADA_-_GOOD" "ka_ra_da_._good" "karada_good"
to_mixed_case(TestText)
[1] "Karada_-_Good" "ka_ra_da_._good" "karada_good"
to_lower_upper_case(TestText)
[1] "karada-GOOD" "kaRAda.GOOD" "karadaGOOD"
to_upper_lower_case(TestText)
[1] "KARADA-good" "KAraDA.good" "KARADAgood"
少しでも、あなたの解析が楽になりますように!!