String 字元/Regular Expression 正規表達特徵
- 在分隔、判斷與取代的文字操作中常提及以特徵(pattern)來作為根據
- 在很多的應用情境中,資料科學團隊需要用一個更廣泛的特徵表達方式,這時就會採用正規表達式(Regular Expression)來支援,常用的正規表達特殊字元有:
- . :任意文字
- ^ :開頭文字
- $ :結束文字
- ? :文字出現零次到一次
- :文字出現零次到多次
- :文字出現一次到多次
- {m} :文字剛好出現 m 次
- {m, n} :文字出現次數介於 m 次與 n 次之間(m < n)
- [] :文字組合
- \ :跳脫符號
- \s :空格
- R 語言的
- strsplit()
- grepl()
- gsub() 函數中的
- split 參數: 支援正規表達式
- pattern 參數: 支援正規表達式
- 常用的正規表達特殊字元大致相同
- 使用到 \ 符號時由於 R 語言的特性,必須使用 \ 符號
shaq <- "Shaquille O'Neal"
strsplit(shaq, split = "\\s+") # 以空格分隔
## [[1]]
## [1] "Shaquille" "O'Neal"
grepl(shaq, pattern = "\\s+") # 判斷是否有空格
## [1] TRUE
gsub(shaq, pattern = "\\s+", replacement = ";") # 將空格取代為分號
[1] "Shaquille;O'Neal"
```