str_replace替換掉原始字串的模式,替換的方式有很多選擇,除了正則表達式之外,甚至能將原始字串更改為NA值、變更大小寫、修改為符號等等,操作上會是個很有趣的函數
基本語法
str_replace(dataset$string, 替換的字元或字串)
str_replace_all(dataset$string, 替換的字元或字串)
可用參數
NA_character_ >> 將字符變更為NA
創建數據框進行替換操作
# 創建數據框
stringr_df <- tibble(animal = c("dog", "cat", "rat", "fish"))
# 輸出結果
r$> stringr_df
# A tibble: 4 x 1
animal
<chr>
1 dog
2 cat
3 rat
4 fish
文字替換為符號,若不是加了all函數,只會變更第一個遇到的字母
# 文字變更為符號
str_replace(stringr_df$animal, "[oati]", "=")
# 輸出結果
r$> str_replace(stringr_df$animal, "[oati]", "=")
[1] "d=g" "c=t" "r=t" "f=sh"
# 文字變更為符號
str_replace_all(stringr_df$animal, "[oati]", "=")
# 輸出結果
r$> str_replace_all(stringr_df$animal, "[oati]", "=")
[1] "d=g" "c==" "r==" "f=sh"
文字變更文字,dog >> pig
# 文字變更為文字
str_replace(stringr_df$animal, "do", "pi")
# 輸出結果
r$> str_replace(stringr_df$animal, "do", "pi")
[1] "pig" "cat" "rat" "fish"
將指定字元所屬字串變更為NA值
# 將"a"所屬字串變更為NA
str_replace(stringr_df$animal, "a", NA_character_)
# 輸出結果
r$> str_replace(stringr_df$animal, "a", NA_character_)
[1] "dog" NA NA "fish"
變更大小寫
# 範圍內字元變更為大寫
str_replace(stringr_df$animal, "[oatig]", toupper)
# 輸出結果
r$> str_replace(stringr_df$animal, "[oatig]", toupper)
[1] "dOg" "cAt" "rAt" "fIsh"
# 開頭變更為大寫
str_replace(stringr_df$animal, "^[a-z]", toupper)
# 輸出結果
r$> str_replace(stringr_df$animal, "^[a-z]", toupper)
[1] "Dog" "Cat" "Rat" "Fish"
# 所有文字變更大寫
str_replace(stringr_df$animal, "[a-z]+", toupper)
# 輸出結果
r$> str_replace(stringr_df$animal, "[a-z]+", toupper)
[1] "DOG" "CAT" "RAT" "FISH"
沒有留言:
張貼留言