什么是转义字符

What's an escape character

我正在参加在线课程以熟悉 R。在完成其中一个练习时我有一些 difficulty/confusion。

emails <- c("john.doe@ivyleague.edu", "education@world.gov", "dalai.lama@peace.org", "invalid.edu", "quant@bigdatacollege.edu", "cookie.monster@sesame.tv")

**hits <- grep(pattern = "@.*\.edu$", x = emails)**

任何人都可以分解(解释)引号(“@.*\.edu$”)中的代码部分吗?尤其是,我不明白反弹的目的是什么?经过一番研究,我了解到“\”是一个转义字符。但是,我不明白它在上述(粗体)代码中的用途是什么。提前致谢。

这是一个正则表达式,用于匹配电子邮件地址的一些特定元素。当您在 regex 表达式中转义某些内容时,这是因为存在您想要匹配但不经过一点格式化就无法使用的保留字符。一些常见的保留字符是 .*[(])

所以在你的表达中,这是对正在发生的事情的细分。

@ matches the character '@' literally

.* matches any character (except newline)

\. matches the character '.' literally

edu matches the characters 'edu' literally (case sensitive)

$ asserts position at end of the string

您可以使用在线提供的众多正则表达式测试器之一来对这些内容进行更多试验。 Here's不错