定位字符 | 描述 |
^ | 其后的模式必在串的开始处,如是一个多行字符串,应位于任一行的开始,对于多行文本(包含回车符的字符串),需要设定Multiline 标志 |
$ | 前面的模式必在字符串的结尾处,如是一个多行字符串,应在任一行的结尾 |
/A | 前面的模式必在串的开始处;多行标志被忽略 |
/z | 前面的模式必在串的结尾处;多行标志被忽略 |
/Z | 前面的模式必在串的结尾处,或是位于换行符前 |
/b | 匹配一个单词边界,实质上是单词字符和非单词字符间的点,单词字符是[a-ZA-Z0-9] 中的任一字符。位于一个单词的开始 |
/B | 匹配一个单词非边界的位置,不在一个单词的开始 |
对数据验证,通常是确定用户只输入了我们想要的数据,而且在数据之前和之后没其他数据,例如: ” 1234 4567 1234 1234 ” 是有效的信用卡号码,而XXXX1234 4567 1234 1234 是无效的,要解决这个问题,可在表达式的开始使用一个“^ ”字符,保证卡号出现在字符串的开始位置,使用$ 确保模式出现在字符串的结束位置,添加了这些字符,就可保证卡号模式既是字符串的开始,又是字符串的结尾,因而是字符串惟一的内容。所以可^/d/d/d/d /d/d/d/d /d/d/d/d /d/d/d/d$ 来表示了。
^ 和$ 对选项MultiLine 很重要,如设定了MultiLine ,“^ ”除了匹配串的开始位置,还可以匹配后跟/r 或/n 的位置,“$ ”除了可匹配串的结束位置,还可匹配/n 或/r 前面的位置.