开始使用免费开始使用

二选一,还是三选一

搜索单个词很容易,对吧?但如果要精确匹配两个或三个词,用普通的"Control + F"就做不到了。不过借助正则表达式,您现在可以定义一个实现该目标的搜索模式。您可以使用 str_view() 查看您的正则表达式匹配到了什么。

当您使用管道运算符 | 连接多个词时,会同时匹配管道前后的内容。而且不限于两个。您也可以有三个选项,用两个管道连接,例如 Hello Anna|Berta|Colin

此外,您还可以使用括号将某些词分组。例如查找 Hello (Anna|Berta|Colin) 会与上面的模式产生不同的结果。请分别尝试这两种写法,并比较结果。

本练习是课程的一部分

R 中级正则表达式

查看课程

练习说明

  • 创建一个模式:搜索以 "Finding " 开头,且后接 "Nemo""Harmony""Dory" 的电影名。
  • 现在用括号 () 将这三个可能性括起来,创建同样的模式,以便比较结果。
  • 在两种模式中,选择能匹配完整电影名 "Finding Nemo""Finding Harmony""Finding Dory" 的那个,并将其传递给第三个 str_match() 调用。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Append the three options: Match Nemo, Harmony or Dory
str_view(lines, pattern = "Finding ___")

# Wrap the three options in parentheses and compare the results
str_view(lines, pattern = "Finding ___")

# Use the pattern from above that matched the whole movie names
str_match(lines, pattern = "Finding ___")
编辑并运行代码