拼接正则表达式

R 中级正则表达式

Angelo Zehr

Data Journalist

用管道符折叠

pattern = "Nemo|Harmony|Dory"

也可以这样创建:

names <- c("Nemo", "Harmony", "Dory")
pattern = glue_collapse(names, sep = "|")
R 中级正则表达式

快速回顾

字符类 名称 示例
\\d 数字 0, 1, 2, 3,…
\\w 单词字符 a, b, c…, 1, 2, 3…, _
\\s 空白 " "、制表符和换行
[A-Za-z] 字母 A, B, C,…, a, b, c,…
R 中级正则表达式

快速回顾

量词 次数
+ 一次或以上
* 零次或以上
R 中级正则表达式

拆分复杂模式

api_response <- "payload: 'Adam, 5, 3', headers: 'Auth...'"

str_match(api_resopnse, pattern = "[A-Za-z]+, \\d+, \\d+")

将匹配:Adam, 5, 3

pattern = glue_collapse(c(
  "name" = "[A-Za-z]+",
  ", ",
  "attempts" = "\\d+",
  ", ",
  "logins" = "\\d+"
))
R 中级正则表达式

让我们来练习!

R 中级正则表达式

Preparing Video For Download...