正则表达式
正则表达式是一种判定字符串内容是否符合某种规范的表达式,它本身的形式就是一个字符串。
要学习正则表达式,首先就要学习正则当中的各种符号:
1、任意一个字符串如果不使用正则表达式的特殊符号,那么它也仍然是正则表达式;只不过,这个字符串的所有内容没有变化度,全部被指定死了。
2、如果我们要匹配更多的灵活情况,那么我们必须要去学习正则表达式的特殊符号。
正则表达式在各种编程语言当中都已经实现了,且基本上都是遵循了统一的语法规则(全球标准),只有部分语言自己多提了点特殊语法(用来号称自己更好用而已)。虽然符号很多,但是抓住三个关键,就是三种括号:
[] --- 在正则表达式当中,一个[]代表一个字符,然后把该字符可以有哪些选择,写在它内部。如果在[]内部出现^,那么表示除了这些符号,其他都可以。比如:[^0-9]
{} --- 在正则表达式当中,代表它前面的表达式能够出现的次数。
{m,n} --- 至少出现m次,最多出现n次
{m,} --- 至少出现m次,最多不限
{m} --- 只能出现m次
它也有简写:
?代表 0 - 1次
+代表 至少1次
*代表 任意次
() --- 代表可选,可选项之间用“|”号分隔。
正则表达式中正确性比简洁性要重要得多!
在实际开发中,经常使用到的正则表达式的地方很多,通常都是输入有效性的验证:电话号码、E-mail、邮政编码、身份证......