让高级模式更易读
很好,您已经掌握了用管道符 | 作为分隔符合并名称列表来创建匹配模式。但「合并」同样适用于把模式拆成小而易懂的部分再拼接起来。只用一个向量(可带名称或不带名称都可以)作为输入,配合 glue_collapse(),您就能把小片段组合成很长且复杂的模式,同时保持更易于理解。
变量 users 已从我们的数据库导出,并再次在全局作用域中可用。但在本练习中,我们不仅关心用户名,还关心其后的数字以及电子邮件地址。
本练习是课程的一部分
R 中级正则表达式
练习说明
- 请再次查看
users的内容。 - 在需要用户名的地方,写一个匹配「一个或多个英文字母」的模式。使用方括号
[]创建这个自定义模式。 - 在需要该用户登录次数的地方,写一个匹配「一个或多个数字」的模式。为此请使用数字字符类。
- 由于每行最后是电子邮件,请写一个匹配「一个或多个任意字符」的简单模式。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Familiarize yourself with users by printing its contents
print(___)
advanced_pattern <- glue_collapse(c(
# Match one or more alphabetical letters
"username" = "^___",
": ",
# Match one or more digit
"logins" = "___",
", ",
# Match one or more arbitrary characters
"email" = "___$"
))
str_view(users, advanced_pattern)