在正则表达式中,为了检查匹配符号是否是起始符号或结尾符号,我们使用定位符。
定位符有两种类型: 第一种类型是 ^ 检查匹配字符是否是起始字符,第二种类型是 $,它检查匹配字符是否是输入字符串的最后一个字符。
插入符号 ^ 符号用于检查匹配字符是否是输入字符串的第一个字符。如果我们使用正则表达式 ^a (如果a是起始符号)匹配字符串 abc,它会匹配到 a。
但是如果我们使用正则表达式 ^b,它是匹配不到任何东西的,因为在字符串 abc 中 "b" 不是起始字符。
让我们来看另一个正则表达式 ^(T|t)he,这表示: 大写字母 T 或小写字母 t 是输入字符串的起始符号,后面跟着小写字母 h,后跟小写字母 e。
美元 $ 符号用于检查匹配字符是否是输入字符串的最后一个字符。例如正则表达式 (at.)$,表示: 小写字母 a,后跟小写字母 t,后跟一个 . 字符,且这个匹配器必须是字符串的结尾。
正则表达式为常用的字符集和常用的正则表达式提供了简写。简写字符集如下:
后行断言和先行断言有时候被称为断言,它们是特殊类型的非捕获组 (用于匹配模式,但不包括在匹配列表中)。当我们在一种特定模式之前或者之后有这种模式时,会优先使用断言。
例如,我们想获取输入字符串 $4.44 and $10.88 中 $ 字符之前的所有数字。我们可以使用这个正则表达式 (?<=\$)0-9.*,表示: 获取 $ 字符之前的所有的数字包含 . 字符。
以下是正则表达式中使用的断言: