模块 3 · 第 1 课(共 4)课程中的9/32~8 min
模块课程(1/4)
开始和结束:`^` 和 `$`
锚点是零宽度断言:它们与
字符串,而不是字符。两个最基本的是 ^ (字符串开头)
和 $ (字符串结尾)。
Code
Pattern: ^Errore
Sample: Errore: connessione persa
^^^^^^
Pattern: \.$
Sample: Frase finale.
^^Errore 匹配单词 Errore 仅当它位于绝对开头时
样本的。 \.$ 匹配句点 仅当它是最后一个字符
样本的。不多不少。
全面验证
最常见的习惯用法是将两者一起使用:^pattern$ 匹配仅
如果整个字符串对应于 pattern。它的基础是
验证:
Code
^\d{4}$ a string of exactly 4 digits, nothing before, nothing after具有开始和结束的结构化验证
使用 ^ 和 $ 锚定模式对于验证至关重要。如果没有锚点,正则表达式 \\d{5} 将在 abc1234567def 内匹配,而使用 ^\\d{5}$ 则字符串将被拒绝,因为整个文本必须恰好包含 5 个数字而没有其他内容。
尝试一下
锻炼#regex.m3.l1.e1
尝试:0加载中...
仅当整个字符串恰好包含 4 位数字(前后没有任何内容)时才匹配整个字符串。
正在加载编辑器...
显示提示
如果没有锚点,\\d{4} 也将接受“2024abc”或“12345”(前 4 位数字)。
3 次尝试后可用的解决方案
复习练习
锻炼#regex.m3.l1.e2
尝试:0加载中...
找到句子的最后一个句号,但前提是它是样本的最后一个字符。
正在加载编辑器...
显示提示
\\.$ 将句点锚定到字符串的末尾。如果没有 $,您将匹配找到的第一个句点。
3 次尝试后可用的解决方案
额外的挑战
锻炼#regex.m3.l1.e3
尝试:0加载中...
Create a pattern that matches only if the entire input string consists exclusively of one or more digits (no other characters at start or end).
正在加载编辑器...
显示提示
将 ^ 放在 \\d+ 模式的开头,将 $ 放在结尾。
3 次尝试后可用的解决方案