这部分内容主要是最近有一部分需求涉及到了字段的格式校验,学习应用了一下,本来内容上其实之前已经看过几遍了,但是没有应用环境,导致看了也没什么印象,这次好歹照猫画虎写了一些相关的代码,可以总结一下。
简述
正则表达式就是用一个用特定字符组合成的字符串,它用来表示一组具有对应表示结构的字符串,即符合正则表达式的结构。
基本的写法是要用双引号包住,里面再包一组正斜杠,如此开始书写内容。
举例说明
需要举例说明来展示相关符号的功能。
例如”/^[A-Za-z0-9_-]$/”,^代表字符串的开头,$代表字符串的结尾,中括号中的内容代表一个字符集合,一个中括号代表在这个字符集合中取一个字符。
再举例”/^[A-Za-z0-9_-]+$/”,和上面的区别就是多了一个+号,代表的含义是中括号内集合字符出现1次或多次,如果+替换成*代表字符出现0次或多次,替换成?代表出现0次或1次。其实后两个按平常使用的系统通配符的含义理解就可以了。
再举例”/^[A-Za-z0-9_-]{3,15}$/”,大括号中的内容代表中括号内集合字符出现3~15次,这种场景可以出现在密码验证中限制密码的位数这种情况下。
再举例”/^[A-Za-z0-9_-]{3,15}abc$/”,代表的内容是在上面的说明基础上,同时以abc做结尾的字符串。
再举例”/^[^A-Z]{3,15}$/”,中括号中的^含义是排除,即除了A-Z之外的字符出现3~15次,起一个除外的作用。
一个.可以代表除了回车(\r\n)外的所有字符。
\w可以代表[A-Za-z0-9_]这个字符集合,\s匹配所有的空白符,包括换行;\S匹配所有的非空白符,不包括换行。
特殊字符用的时候自行查一下,主要是有些符号在表达式中有意义,实际上要表示这个符号要用反斜杠转义一下。
修饰符——标记匹配的模式,像是i表示忽视大小写,g表示全局匹配找出所有的满足字符串等。