常用正则表达式大全
常用正则表达式语法大全
正则表达式是一种用于匹配和处理文本的强大工具,可以在很多编程语言和文本编辑器中使用。
以下是一些常用的正则表达式语法:1.字符匹配:–.: 匹配任意单个字符,不包括换行符。
–\w: 匹配任意字母、数字或下划线。
–\d: 匹配任意数字。
–\s: 匹配任意空白字符,包括空格、制表符、换行等。
–[...]: 匹配方括号内的任意字符。
例如,[aeiou]匹配任意一个元音字母。
–[^...]: 匹配除了方括号内字符之外的任意字符。
例如,[^aeiou]匹配任意一个非元音字母。
2.重复匹配:–*: 匹配前一个字符0次或多次。
–+: 匹配前一个字符1次或多次。
–: 匹配前一个字符0次或1次。
–{n}: 匹配前一个字符恰好n次。
–{n,}: 匹配前一个字符至少n次。
–{n,m}: 匹配前一个字符至少n次,最多m次。
3.边界匹配:–^: 匹配字符串的开始位置。
–$: 匹配字符串的结束位置。
–\b: 匹配单词边界,即单词前后的位置。
–\B: 匹配非单词边界的位置。
4.分组和捕获:–(): 将括号内的表达式视为一个分组。
–(?:): 类似于普通分组,但不进行捕获。
–\n: 反向引用,引用第n个分组的内容。
5.特殊字符转义:–\: 转义字符,用于匹配特殊字符本身。
6.修饰符:–i: 忽略大小写。
–g: 全局匹配,不仅匹配第一个结果。
–m: 多行匹配,使^和$匹配每一行的开始和结束。
这里列举了一些常用的正则表达式语法,但实际使用中,还有更多复杂的语法和特性,可以根据具体需求查阅更详细的正则表达式文档和教程。
不同编程语言和文本编辑器对正则表达式的支持也有所不同,所以在实际应用中需要根据具体的环境进行调整。
常用的正则表达式代码汇总
常⽤的正则表达式代码汇总常⽤的正则表达式代码汇总常⽤的正则表达式代码汇总:1。
^\d+$ //匹配⾮负整数(正整数 + 0)2。
^[0-9]*[1-9][0-9]*$ //匹配正整数3。
^((-\d+)|(0+))$ //匹配⾮正整数(负整数 + 0)4。
^-[0-9]*[1-9][0-9]*$ //匹配负整数5。
^-?\d+$ //匹配整数6。
^\d+(\.\d+)?$ //匹配⾮负浮点数(正浮点数 + 0)7。
^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$ //匹配正浮点数8。
^((-\d+(\.\d+)?)|(0+(\.0+)?))$ //匹配⾮正浮点数(负浮点数 + 0)9。
^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$ //匹配负浮点数10。
^(-?\d+)(\.\d+)?$ //匹配浮点数11。
^[A-Za-z]+$ //匹配由26个英⽂字母组成的字符串12。
^[A-Z]+$ //匹配由26个英⽂字母的⼤写组成的字符串13。
^[a-z]+$ //匹配由26个英⽂字母的⼩写组成的字符串14。
^[A-Za-z0-9]+$ //匹配由数字和26个英⽂字母组成的字符串15。
^\w+$ //匹配由数字、26个英⽂字母或者下划线组成的字符串16。
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$ //匹配email地址17。
^[a-zA-z]+://匹配(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$ //匹配url18。
匹配中⽂字符的正则表达式: [\u4e00-\u9fa5]19。
匹配双字节字符(包括汉字在内):[^\x00-\xff]20。
常用的正则表达式代码汇总
常⽤的正则表达式代码汇总常⽤的正则表达式代码汇总常⽤的正则表达式代码汇总:1。
^\d+$ //匹配⾮负整数(正整数 + 0)2。
^[0-9]*[1-9][0-9]*$ //匹配正整数3。
^((-\d+)|(0+))$ //匹配⾮正整数(负整数 + 0)4。
^-[0-9]*[1-9][0-9]*$ //匹配负整数5。
^-?\d+$ //匹配整数6。
^\d+(\.\d+)?$ //匹配⾮负浮点数(正浮点数 + 0)7。
^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$ //匹配正浮点数8。
^((-\d+(\.\d+)?)|(0+(\.0+)?))$ //匹配⾮正浮点数(负浮点数 + 0)9。
^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$ //匹配负浮点数10。
^(-?\d+)(\.\d+)?$ //匹配浮点数11。
^[A-Za-z]+$ //匹配由26个英⽂字母组成的字符串12。
^[A-Z]+$ //匹配由26个英⽂字母的⼤写组成的字符串13。
^[a-z]+$ //匹配由26个英⽂字母的⼩写组成的字符串14。
^[A-Za-z0-9]+$ //匹配由数字和26个英⽂字母组成的字符串15。
^\w+$ //匹配由数字、26个英⽂字母或者下划线组成的字符串16。
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$ //匹配email地址17。
^[a-zA-z]+://匹配(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$ //匹配url18。
匹配中⽂字符的正则表达式: [\u4e00-\u9fa5]19。
匹配双字节字符(包括汉字在内):[^\x00-\xff]20。
常用的正则表达式
常用的正则表达式整理1、非负整数:^\d+$2、正整数:^[0-9]*[1-9][0-9]*$3、非正整数:^((-\d+)|(0+))$4、负整数:^-[0-9]*[1-9][0-9]*$5、整数:^-?\d+$6、非负浮点数:^\d+(\.\d+)?$7、正浮点数:^((0-9)+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)) $8、非正浮点数:^((-\d+\.\d+)?)|(0+(\.0+)?))$9、负浮点数:^(-((正浮点数正则式)))$10、英文字符串:^[A-Za-z]+$11、英文大写串:^[A-Z]+$12、英文小写串:^[a-z]+$13、英文字符数字串:^[A-Za-z0-9]+$14、英数字加下划线串:^\w+$15、E-mail地址:^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$16、URL:^[a-zA-Z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$或:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$17、邮政编码:^[1-9]\d{5}$18、中文:^[\u0391-\uFFE5]+$19、电话号码:^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$ 20、手机号码:^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$21、双字节字符(包括汉字在内):^\x00-\xff22、匹配首尾空格:(^\s*)|(\s*$)(像vbscript那样的trim函数)23、匹配HTML标记:<(.*)>.*<\/\1>|<(.*) \/>24、匹配空行:\n[\s| ]*\r25、提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?26、提取信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*27、提取信息中的图片链接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?28、提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)29、提取信息中的中国手机号码:(86)*0*13\d{9}30、提取信息中的中国固定电话号码:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}31、提取信息中的中国电话号码(包括移动和固定电话):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}32、提取信息中的中国邮政编码:[1-9]{1}(\d+){5}33、提取信息中的浮点数(即小数):(-?\d*)\.?\d+34、提取信息中的任何数字:(-?\d*)(\.\d+)?35、IP:(\d+)\.(\d+)\.(\d+)\.(\d+)36、电话区号:/^0\d{2,3}$/37、腾讯QQ号:^[1-9]*[1-9][0-9]*$38、帐号(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$匹配中文字符的正则表达式:[\u4e00-\u9fa5]匹配双字节字符(包括汉字在内):[^\x00-\xff]匹配空行的正则表达式:\n[\s| ]*\r匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/ 匹配首尾空格的正则表达式:(^\s*)|(\s*$)匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*匹配网址URL的正则表达式:^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S *)?$匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$匹配国内电话号码:(\d{3}-|\d{4}-)?(\d{8}|\d{7})?匹配腾讯QQ号:^[1-9]*[1-9][0-9]*$下表是元字符及其在正则表达式上下文中的行为的一个完整列表:\将下一个字符标记为一个特殊字符、或一个原义字符、或一个后向引用、或一个八进制转义符。
正则表达式语法大全
正则表达式语法大全前言:一般开发中都会接触到正则表达式,作为一名合格的前端,也应该了解一下正则表达式编写原则,便于自己也能快速编写想要的正则表达式。
1、作用(正则表达式是一种字符串匹配的模式)数据验证:比如电话号码、邮箱等替换文本:快速找到特定文本,用于替换快速提取字符串:基于匹配原则,快速从文档中查找或提取子字符串2、语法(普通字符+特殊字符)普通字符[abc] 匹配[...]的所有字符[^abc] 取反,除了[...]的其他字符[A-Z] 区间字母A到Z.匹配除(\n换行符 \r 回车符)的任何单个字符\s \S 匹配所有,\s所有空白符,包括换行 \S非空白符,不包括换行\w 匹配字母、数字、下划线特殊字符$ 结尾位置(匹配$字符----\$)^ 开始位置(匹配$字符----\^)() 子表达式开始和结束(匹配字符----\( 和 \))* 匹配零次或多次(匹配字符----\*)+匹配一次或多次(匹配字符----\+)匹配零次或一次(匹配字符----\?)| 两项间的一个(匹配字符----\|)限定符{n} n为非负整数,匹配n次{n,} n为非负整数,至少n次{n,m} n为非负整数,n<=m,最少n次,最多m次修饰符i 不区分大小写g 全局匹配m 多行匹配s 特殊字符远点包含换行符3、常用场景•16进制颜色/^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/以#开始,6或3个字符(A-F、a-f、0-9)结尾•电话号码/^1(3\d|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8\d|9[0-35-9])\d{8}$/以1开头,3可跟任一数字(\d),4可跟5-9,5可跟0-3或5-9 ,6后2567其中一个,7后是0-8,8后任一数字,9后是0-3或3-5,其余8位是任意数字(\d{8})•身份证号/^[1-9]\d{5}(19|20|21)\d{2}(0[1-9]|10|11|12)(0[1-9]|[1-2]\d|30|31)\d{3}[\dX]$/ 第一位在0-9区间,后面是5位任意数字,4位年份(19、20、21开头,后两位任意),两位代表月份(0开头的1-9或者是10、11、12),两位日期(01-31),三位顺序码,最后一位是校验码,可数字可X•网址/^((https?):)?\/\/([^?:/]+)(:(\d+))?(\/[^?]*)?(\?(.*))?/•邮箱^[A-Za-z0-9-_\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$ 名称有汉字([\ue00-\u9fa5])、字母([a-zA-z])、数字、下划线、中划线,域名有数字、字母、下划线、中划线4、使用方法字符串.match(正则):返回符合的字符串,若不满足返回null字符串.search(正则):返回搜索到的位置,若非一个字符,则返回第一个字母的下标,若不匹配则返回-1字符串.replace(正则,新的字符串):找到符合正则的内容并替换正则.test(字符串):在字符串中查找符合正则的内容,满足则返回true,反之为false说明:new RegExp(规则).test(字符串)和上面写法作用相同。
正则表达式150种表达方式
正则表达式150种表达方式1、删除所有数字。
只要查找:\d就OK。
为了不留空行:替换处:\d2、删除所有英文字母。
只要查找:\a就OK。
为了不留空行:替换处:\d3、删除除换行符以外的所有。
只要查找:. 为了不留空行:替换处:\d4、既删除英文字母又删除数字。
只要查找:\w。
为了不留空行:替换处:\d5、删除数字加字母加等于(如:3a=或3zz=)只要查找:\d+\a+\=。
为了不留空行:替换处:\d6、删除换行。
只要查找:$。
替换处:\d(还原查找:\a+=\f。
替换:\0\n)。
如在换行后加一空格,查找:(\a)$。
替换:\0 \d。
7、删除空行只要查找:^$。
为了不留空行:替换处:\d8、删除首尾空格。
只要查找:^\s*|\s*$就OK9、删除行前数字及顿号。
只要查找:\d+、替换为空10、删除末尾标点符号。
只要查找:\P+$|\P+\s+$,“|”前面是没有空格的,“|”后面有空格,P后的加是为了……而用的。
11、删除末尾空格。
只要查找:\s+$。
替换为空。
12、删除第一个字如:“的我们”中的“的”只要查找:^\的。
13、删除第几个字。
查找:查找:^().(.+)。
替换:\1\2。
去掉前面的拼音:查找:^\a+替换为空。
第一个括号里可加“.”且可变。
14、删含的。
查:.*的.*替:\d。
的头查:.*=的.*替:\d。
的尾查:\a.*\c.*的$替:\d(留它不匹配)●删非的行查:^[^的]+$替:\d15、删除几码以上的码查:^(...)...替:\1。
删第几位码。
查:^(...).(.+)替:\1\2(变成\1,\2则其位则改成,了)首括号的.可变。
16、删除各类型的几字词,但必须是码前词后或纯词。
三字词:查找:^\~f{}\f{3}$替换:\d。
替换:\d “3”可以改。
17、删除11字词及其以上的词条查找(自定义格式):\a{}\=(\c|\P|\p){11,}。
替换:\d。
11可改。
正则表达式公式大全
正则表达式公式大全正则表达式是一种处理字符串的强大工具,它可以帮助我们快速、高效地匹配、替换、删除、提取字符串。
很多编程语言,包括Python、Java、JavaScript等都支持正则表达式,所以掌握正则表达式是非常重要的。
下面是一些常用的正则表达式公式:1. 匹配单个字符:(1).点号(.)表示匹配任何单个字符,除了换行符。
(2)\d表示数字,等价于[0-9]。
(3)\D表示非数字,等价于[^0-9]。
(4)\w表示字符,包括数字、字母和下划线,等价于[a-zA-Z0-9_]。
(5)\W表示非字符,等价于[^a-zA-Z0-9_]。
(6)\s表示空白字符,包括空格、制表符、换行符等。
(7)\S表示非空白字符。
2. 匹配重复字符:(1)*表示重复0次或更多次。
(2)+表示重复1次或更多次。
(3)?表示重复0次或1次。
(4){n}表示重复n次。
(5){n,}表示重复n次或更多次。
(6){n,m}表示重复n到m次。
3. 匹配位置:(1)^表示匹配开头位置。
(2)$表示匹配结尾位置。
(3)\b表示匹配单词边界。
(4)\B表示匹配非单词边界。
4. 匹配分组:(1)( )表示一个分组。
(2)\1、\2、\3等表示对之前的分组的引用。
(3)(?: )表示一个非捕获分组。
5. 匹配字符集:(1)[ ]表示一个字符集,例如[abc]表示匹配a、b、c中的任意一个字符。
(2)[^ ]表示一个否定字符集,例如[^abc]表示匹配除了a、b、c以外的任意一个字符。
(3)[a-z]表示一个范围,表示匹配a至z中的任意一个字母。
6. 匹配转义字符:(1)\表示转义字符,例如\\.表示匹配点号。
(2)\n表示匹配换行符。
(3)\r表示匹配回车符。
(4)\t表示匹配制表符。
(5)\xx表示匹配十六进制字符。
以上是一些常用的正则表达式公式,如果我们能够熟练掌握这些公式,就可以很好地应用正则表达式来处理字符串。
当然,对于不同编程语言来说,对于正则表达式的支持也会有所不同,所以需要我们在实际应用中注意区别。
正则表达式实用语法大全
正则表达式实用语法大全正则表达式是一种强大的文本匹配和处理工具,它可以用来在字符串中查找、替换和提取特定的模式。
下面是一些常用的正则表达式实用语法:1. 字符匹配。
\d: 匹配数字。
\w: 匹配字母、数字、下划线。
\s: 匹配空白字符。
. : 匹配任意字符。
2. 重复匹配。
: 匹配前面的元素零次或多次。
+ : 匹配前面的元素一次或多次。
: 匹配前面的元素零次或一次。
{n} : 匹配前面的元素恰好n次。
{n,} : 匹配前面的元素至少n次。
{n,m} : 匹配前面的元素至少n次,至多m次。
3. 边界匹配。
^ : 匹配字符串的开头。
$ : 匹配字符串的结尾。
\b : 匹配单词的边界。
4. 分支条件。
| : 匹配多个表达式中的一个。
5. 分组。
( ) : 将表达式分组。
(?: ) : 只匹配不捕获分组。
(?<name> ) : 命名捕获分组。
6. 贪婪与非贪婪。
: 匹配前面的元素零次或多次,尽量少匹配。
+? : 匹配前面的元素一次或多次,尽量少匹配。
: 匹配前面的元素零次或一次,尽量少匹配。
{n,m}? : 匹配前面的元素至少n次,至多m次,尽量少匹配。
7. 反义。
\D : 匹配非数字。
\W : 匹配非字母、数字、下划线。
\S : 匹配非空白字符。
8. 转义字符。
\ : 转义特殊字符。
以上是一些常用的正则表达式实用语法,通过灵活运用这些语法,可以实现对文本的高效处理和匹配。
希望这些内容对你有所帮助。
字母数字下划线常用正则表达式
字母数字下划线常⽤正则表达式1.由数字、26个英⽂字母或者下划线组成的字符串:^[0-9a-zA-Z_]{1,}$2.⾮负整数(正整数 + 0 ):^/d+$3. 正整数:^[0-9]*[1-9][0-9]*$4.⾮正整数(负整数 + 0):^((-/d+)|(0+))$5. 负整数 :^-[0-9]*[1-9][0-9]*$6.整数:^-?/d+$7.⾮负浮点数(正浮点数 + 0):^/d+(/./d+)?$8.正浮点数 :^(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$9. ⾮正浮点数(负浮点数 + 0):^((-/d+(/./d+)?)|(0+(/.0+)?))$10.负浮点数 :^(-(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*)))$11. 浮点数 :^(-?/d+)(/./d+)?$12.由26个英⽂字母组成的字符串 :^[A-Za-z]+$13. 由26个英⽂字母的⼤写组成的字符串 :^[A-Z]+$14.由26个英⽂字母的⼩写组成的字符串 :^[a-z]+$15. 由数字和26个英⽂字母组成的字符串 :^[A-Za-z0-9]+$16.由数字、26个英⽂字母或者下划线组成的字符串 :^/w+$17.email地址 :^[/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+$18.url:^[a-zA-z]+://(/w+(-/w+)*)(/.(/w+(-/w+)*))*(/?/S*)?$19. 年-⽉-⽇:/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/20.⽉/⽇/年:/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/21.Emil:^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$22. 电话号码:(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?23.IP地址:^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$ 24. 匹配中⽂字符的正则表达式:[/u4e00-/u9fa5]25.匹配双字节字符(包括汉字在内):[^/x00-/xff]26. 匹配空⾏的正则表达式:/n[/s| ]*/r27.匹配HTML标记的正则表达式:/<(.*)>.*<///1>|<(.*) //>/28.匹配⾸尾空格的正则表达式:(^/s*)|(/s*$)29.匹配Email地址的正则表达式:/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*30. 匹配⽹址URL的正则表达式:^[a-zA-z]+://(//w+(-//w+)*)(//.(//w+(-//w+)*))*(//?//S*)?$31. 匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$32. 匹配国内电话号码:(/d{3}-|/d{4}-)?(/d{8}|/d{7})?33.匹配腾讯QQ号:^[1-9]*[1-9][0-9]*$34. 只能输⼊数字:^[0-9]*$35.只能输⼊n位的数字:^/d{n}$36.只能输⼊⾄少n位的数字:^/d{n,}$37.只能输⼊m~n位的数字:^/d{m,n}$38.只能输⼊零和⾮零开头的数字:^(0|[1-9][0-9]*)$39.只能输⼊有两位⼩数的正实数:^[0-9]+(.[0-9]{2})?$40. 只能输⼊有1~3位⼩数的正实数:^[0-9]+(.[0-9]{1,3})?$41.只能输⼊⾮零的正整数:^/+?[1-9][0-9]*$42. 只能输⼊⾮零的负整数:^/-[1-9][0-9]*$43.只能输⼊长度为3的字符:^.{3}$44. 只能输⼊由26个英⽂字母组成的字符串:^[A-Za-z]+$45.只能输⼊由26个⼤写英⽂字母组成的字符串:^[A-Z]+$46. 只能输⼊由26个⼩写英⽂字母组成的字符串:^[a-z]+$47.只能输⼊由数字和26个英⽂字母组成的字符串:^[A-Za-z0-9]+$48. 只能输⼊由数字和26个英⽂字母或者下划线组成的字符串:^/w+$49.验证⽤户密码(正确格式为:以字母开头,长度在5~17 之间,只能包含字符、数字和下划线)^[a-zA-Z]/w{5,17}$50.验证是否包含有 ^%&',;=?$/"等字符:[^%&',;=?$/x22]+51.只能输⼊汉字:^[\u4e00-\u9fa5]{0,}$52、只含有汉字、数字、字母、下划线不能以下划线开头和结尾^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$53、只含有汉字、数字、字母、下划线,下划线位置不限^[a-zA-Z0-9_\u4e00-\u9fa5]+$54、2~4个汉字@"^[\u4E00-\u9FA5]{2,4}$55、第⼀位是【1】开头,第⼆位则则有【3,4,5,7,8】,第三位则是【0-9】,第三位之后则是数字【0-9】。
正则表达式15个常用实例
正则表达式15个常用实例正则表达式是一种文本模式语言,它允许用户通过指定模式来查找或替换文本。
它在编程语言和许多计算机应用程序中都有用,特别是在解析和处理文本时。
下面我们就来看看正则表达式的15个常用实例。
1.匹配字符串中的数字:\d+ 。
2.匹配字符串中的小写字母:[a-z] 。
3.匹配字符串中的大写字母:[A-Z] 。
4.匹配字符串中的所有单词字符:\w+ 。
5.匹配字符串中的空格字符:\s+ 。
6.匹配字符串中的日期:\d{4}-\d{2}-\d{2} 。
7.匹配字符串中的邮箱地址:[a-zA-Z0-9]+@[a-z]+\.[a-z]+ 。
8.匹配字符串中的URL:https?:\/\/[a-zA-Z0-9]+\.[a-z]+ 。
9.匹配字符串中的IP地址:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} 。
10.匹配字符串中的HTML标签:<[a-zA-Z0-9]+> 。
11.匹配字符串中的HTML属性:\w+=".*?" 。
12.匹配字符串中的中文字符:[\u4e00-\u9fa5] 。
13.匹配字符串中的特殊字符:[\^\.\?\*\+\$\[\]\(\)\{\}\\\/\|] 。
14.匹配字符串中的任意字符:. 。
15.匹配字符串中的任意位置:^$ 。
正则表达式非常强大,它可以用来检测字符串中的任何模式,并执行替换或提取操作。
正则表达式的15个常用实例只是用来提醒用户,它们只是正则表达式的一小部分。
正则表达式的应用种类很多,可以用来检测文本格式、搜索特定字符串、数据验证和替换文本。
有了正则表达式,开发者可以更有效地处理文本,从而大大提高工作效率。
常用密码正则
密码的正则表达式用于验证密码的格式,以下是一些常用的密码正则表达式:
1. 至少8个字符,包括至少1个数字,1个大写字母和1个小写字母:
```regex
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$
```
2. 至少8个字符,至少1个大写字母,1个小写字母,1个数字和1个特殊字符:
```regex
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()\-
_=+{};:,<.>]).{8,}$
```
3. 至少8个字符,至少包含1个数字、1个大写字母、1个小写字母、1个特殊字符和1个符号:
```regex
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()\-
_=+{};:,<.>]).{8,}$
```
4. 长度在8-16个字符之间,至少包含1个大写字母、1个小写字母和1个数字,其他字符可以是任意字符:
```regex
/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[^]{8,16}$/
```
5. 长度在8-16个字符之间,至少包含1个大写字母、1个小写字母、1个数字和1个特殊字符:
```regex
/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()\-
_=+{};:,<.>]).{8,16}$/
```
这些正则表达式可以用于验证密码的复杂性和长度,以提高账户的安全性。
请注意,这只是一个示例列表,具体的正则表达式取决于你的具体需求和密码策略。
20个常用的正则表达式
20个常用的正则表达式摘要:1.正则表达式的概念2.为什么需要正则表达式3.20 个常用的正则表达式a.匹配数字b.匹配字母c.匹配字符串d.匹配空白字符e.匹配特殊字符f.匹配范围g.匹配零次或多次h.匹配一次或多次i.匹配两次或多次j.匹配正则表达式k.匹配非正则表达式l.匹配开头m.匹配结尾n.匹配子字符串o.匹配连续字符p.匹配非连续字符q.匹配可选字符r.匹配分组s.匹配替换t.匹配转义字符u.匹配反向引用v.匹配贪婪与懒惰匹配w.匹配并匹配下一个字符x.匹配字符集合y.匹配字符范围z.匹配Unicode 字符正文:正则表达式是一种强大的文本处理工具,它可以用来检查文本是否符合某种模式、提取文本中的特定部分或者替换文本中的某些内容。
在Python 等编程语言中,正则表达式被广泛应用于文本分析、网页抓取、数据分析等领域。
本文将介绍20 个常用的正则表达式,帮助你更好地掌握正则表达式的使用。
1.匹配数字:`d` 匹配任意数字,`d+` 匹配一个或多个数字,`d{3}` 匹配三个数字。
2.匹配字母:`[a-zA-Z]` 匹配任意字母,`[a-zA-Z]+` 匹配一个或多个字母,`[a-zA-Z]{3}` 匹配三个字母。
3.匹配字符串:`".*"` 匹配任意字符串,`".*?"` 匹配一个或多个字符串,`".*?{"` 匹配一个包含在大括号内的字符串。
4.匹配空白字符:`s` 匹配任意空白字符,包括空格、制表符、换行符等,`s+` 匹配一个或多个空白字符。
5.匹配特殊字符:`[!@#$%^&*(),.?":{}|<>]` 匹配任意特殊字符。
6.匹配范围:`-` 匹配数字范围,如`d-` 匹配0-9 的数字,`[a-zA-Z]` 匹配所有字母。
7.匹配零次或多次:`*` 匹配前面的字符出现零次或多次,如`d*` 匹配零个或多个数字。
20个常用的正则表达式 单字母
正则表达式(Regular Expression)是一种用于匹配字符串的强大工具。
它通过使用特定的符号和字符来描述和匹配一系列字符串,能够满足我们在处理文本时的各种需求。
在这篇文章中,我们将深入探讨20个常用的单字母正则表达式,并通过实例来展示它们的使用方法。
1. \b在正则表达式中,\b表示单词的边界。
它可以用来匹配单词的开头或结尾,用于查找特定单词而不是单词的一部分。
2. \d\d表示任意一个数字字符。
它可以用来匹配任何数字,例如\d+可以匹配一个或多个数字字符。
3. \w\w表示任意一个字母、数字或下划线字符。
它可以用来匹配单词字符,例如\w+可以匹配一个或多个单词字符。
4. \s\s表示任意一个空白字符,包括空格、制表符、换行符等。
它可以用来匹配空白字符,例如\s+可以匹配一个或多个空白字符。
5. \.\.表示匹配任意一个字符,包括标点符号和空格等。
它可以用来匹配任意字符,例如\.可以匹配任意一个字符。
6. \A\A表示匹配字符串的开始。
它可以用来确保匹配发生在字符串的开头。
7. \Z\Z表示匹配字符串的结束。
它可以用来确保匹配发生在字符串的结尾。
8. \b\b表示单词的边界。
它可以用来匹配单词的开头或结尾,用于查找特定单词而不是单词的一部分。
9. \D\D表示任意一个非数字字符。
它可以用来匹配任何非数字字符。
10. \W\W表示任意一个非单词字符。
它可以用来匹配任何非单词字符。
11. \S\S表示任意一个非空白字符。
它可以用来匹配任何非空白字符。
12. \[\[表示匹配方括号。
它可以用来匹配包含在方括号内的字符。
13. \]\]表示匹配方括号。
它可以用来匹配包含在方括号内的字符。
14. \(\(表示匹配左括号。
它可以用来匹配包含在左括号内的字符。
15. \)\)表示匹配右括号。
它可以用来匹配包含在右括号内的字符。
16. \{\{表示匹配左花括号。
它可以用来匹配包含在左花括号内的字符。
17. \}\}表示匹配右花括号。
常用交通方面的正则表达式
常用交通方面的正则表达式
以下是一些常用的交通方面的正则表达式:
1. 车牌号:
```ruby
\b\d{1}[A-Z]{1}\d{5}[A-Z]{1}\d{3}[A-Z]{1}\d{7}\b
```
这个正则表达式用于匹配中国车牌号,其中 \b 表示单词边界,\d 表示数字,{n} 表示前面的字符重复 n 次。
2. 邮政编码:
```ruby
\b\d{6}\b
```
这个正则表达式用于匹配中国的邮政编码,其中 \b 表示单词边界,\d 表示数字。
3. 身份证号:
```ruby
\b\d{17}[\dXx]\d{2}\b
```
这个正则表达式用于匹配中国的身份证号,其中 \b 表示单词边界,\d 表示数字,X 或 x 表示校验码。
4. 道路名称:
```ruby
\b[A-Za-z0-9_]{1,}\b
```
这个正则表达式用于匹配道路名称,其中 \b 表示单词边界,[A-Za-z0-9_] 表示允许的字符集。
5. 城市名称:
```ruby
\b[A-Za-z0-9_/]{1,}\b
```
这个正则表达式用于匹配城市名称,其中 \b 表示单词边界,[A-Za-z0-9_] 表示允许的字符集。
分享20个常用的正则表达
分享20个常⽤的正则表达正则表达式,⼀个⼗分古⽼⽽⼜强⼤的⽂本处理⼯具,仅仅⽤⼀段⾮常简短的表达式语句,便能够快速实现⼀个⾮常复杂的业务逻辑。
熟练地掌握正则表达式的话,能够使你的开发效率得到极⼤的提升。
正则表达式经常被⽤于字段或任意字符串的校验,如下⾯这段校验基本⽇期格式的JavaScript代码:var reg = /^(\\d{1,4})(-|\\/)(\\d{1,2})\\2(\\d{1,2})$/;var r = fieldValue.match(reg);if(r==null)alert('Date format error!');下⾯是技匠整理的,在前端开发中经常使⽤到的20个正则表达式。
1 . 校验密码强度密码的强度必须是包含⼤⼩写字母和数字的组合,不能使⽤特殊字符,长度在8-10之间。
^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$2. 校验中⽂字符串仅能是中⽂。
^[\\u4e00-\\u9fa5]{0,}$3. 由数字、26个英⽂字母或下划线组成的字符串^\\w+$4. 校验E-Mail 地址同密码⼀样,下⾯是E-mail地址合规性的正则检查语句。
[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])?5. 校验⾝份证号码下⾯是⾝份证号码的正则校验。
15 或 18位。
15位:^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$18位:^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$6. 校验⽇期“yyyy-mm-dd“ 格式的⽇期校验,已考虑平闰年。
常用正则表达式
19 浮点数:^(-?\d+)(\.\d+)?$ 或 ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$
{n}:表示内容必须出现n次
{n,m}:表示内容出现n-m次
{n,}:表示内容出现至少n次
例如,\d{11} 就表示数字只能出现11位,这样就解决了上述的问题。
1.1.2. 分组
通过上面的内容,我们还无法解决类似下面的问题:
在描述电话号码时,前面有区号,区号的形式可以是0086或者+86
4 手机号码:^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$
5 电话号码("XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX):^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$
二、校验字符的表达式
1 汉字:^[\u4e00-\u9fa5]{0,}$
2 英文和数字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$
3 长度为3-20的所有字符:^.{3,20}$
最全的常用正则表达式大全
最全的常⽤正则表达式⼤全⼀、校验数字的表达式1 数字:^[0-9]*$2 n位的数字:^\d{n}$3 ⾄少n位的数字:^\d{n,}$4 m-n位的数字:^\d{m,n}$5 零和⾮零开头的数字:^(0|[1-9][0-9]*)$6 ⾮零开头的最多带两位⼩数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7 带1-2位⼩数的正数或负数:^(\-)?\d+(\.\d{1,2})?$8 正数、负数、和⼩数:^(\-|\+)?\d+(\.\d+)?$9 有两位⼩数的正实数:^[0-9]+(.[0-9]{2})?$10 有1~3位⼩数的正实数:^[0-9]+(.[0-9]{1,3})?$11 ⾮零的正整数:^[1-9]\d*$ 或 ^([1-9][0-9]*){1,3}$ 或 ^\+?[1-9][0-9]*$12 ⾮零的负整数:^\-[1-9][]0-9"*$ 或 ^-[1-9]\d*$13 ⾮负整数:^\d+$ 或 ^[1-9]\d*|0$14 ⾮正整数:^-[1-9]\d*|0$ 或 ^((-\d+)|(0+))$15 ⾮负浮点数:^\d+(\.\d+)?$ 或 ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$16 ⾮正浮点数:^((-\d+(\.\d+)?)|(0+(\.0+)?))$ 或 ^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$17 正浮点数:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ 或 ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$18 负浮点数:^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ 或 ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$19 浮点数:^(-?\d+)(\.\d+)?$ 或 ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$⼆、校验字符的表达式1 汉字:^[\u4e00-\u9fa5]{0,}$2 英⽂和数字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$3 长度为3-20的所有字符:^.{3,20}$4 由26个英⽂字母组成的字符串:^[A-Za-z]+$5 由26个⼤写英⽂字母组成的字符串:^[A-Z]+$6 由26个⼩写英⽂字母组成的字符串:^[a-z]+$7 由数字和26个英⽂字母组成的字符串:^[A-Za-z0-9]+$8 由数字、26个英⽂字母或者下划线组成的字符串:^\w+$ 或 ^\w{3,20}$9 中⽂、英⽂、数字包括下划线:^[\u4E00-\u9FA5A-Za-z0-9_]+$10 中⽂、英⽂、数字但不包括下划线等符号:^[\u4E00-\u9FA5A-Za-z0-9]+$ 或 ^[\u4E00-\u9FA5A-Za-z0-9]{2,20}$11 可以输⼊含有^%&',;=?$\"等字符:[^%&',;=?$\x22]+12 禁⽌输⼊含有~的字符:[^~\x22]+三、特殊需求表达式1 Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$2 域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?3 InternetURL:[a-zA-z]+://[^\s]* 或 ^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$4 ⼿机号码:^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$5 电话号码("XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX):^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$6 国内电话号码(0511-*******、021-********):\d{3}-\d{8}|\d{4}-\d{7}7 ⾝份证号(15位、18位数字):^\d{15}|\d{18}$8 短⾝份证号码(数字、字母x结尾):^([0-9]){7,18}(x|X)?$ 或 ^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$9 帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$10 密码(以字母开头,长度在6~18之间,只能包含字母、数字和下划线):^[a-zA-Z]\w{5,17}$11 强密码(必须包含⼤⼩写字母和数字的组合,不能使⽤特殊字符,长度在8-10之间):^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$12 ⽇期格式:^\d{4}-\d{1,2}-\d{1,2}13 ⼀年的12个⽉(01~09和1~12):^(0?[1-9]|1[0-2])$14 ⼀个⽉的31天(01~09和1~31):^((0?[1-9])|((1|2)[0-9])|30|31)$15 钱的输⼊格式:16 1.有四种钱的表⽰形式我们可以接受:"10000.00" 和 "10,000.00", 和没有 "分" 的 "10000" 和 "10,000":^[1-9][0-9]*$17 2.这表⽰任意⼀个不以0开头的数字,但是,这也意味着⼀个字符"0"不通过,所以我们采⽤下⾯的形式:^(0|[1-9][0-9]*)$18 3.⼀个0或者⼀个不以0开头的数字.我们还可以允许开头有⼀个负号:^(0|-?[1-9][0-9]*)$19 4.这表⽰⼀个0或者⼀个可能为负的开头不为0的数字.让⽤户以0开头好了.把负号的也去掉,因为钱总不能是负的吧.下⾯我们要加的是说明可能的⼩数部分:^[0-9]+(.[0-9]+)?$20 5.必须说明的是,⼩数点后⾯⾄少应该有1位数,所以"10."是不通过的,但是 "10" 和 "10.2" 是通过的:^[0-9]+(.[0-9]{2})?$21 6.这样我们规定⼩数点后⾯必须有两位,如果你认为太苛刻了,可以这样:^[0-9]+(.[0-9]{1,2})?$22 7.这样就允许⽤户只写⼀位⼩数.下⾯我们该考虑数字中的逗号了,我们可以这样:^[0-9]{1,3}(,[0-9]{3})*(.[0-9]{1,2})?$23 8.1到3个数字,后⾯跟着任意个逗号+3个数字,逗号成为可选,⽽不是必须:^([0-9]+|[0-9]{1,3}(,[0-9]{3})*)(.[0-9]{1,2})?$24 备注:这就是最终结果了,别忘了"+"可以⽤"*"替代如果你觉得空字符串也可以接受的话(奇怪,为什么?)最后,别忘了在⽤函数时去掉去掉那个反斜杠,⼀般的错误都在这⾥25 xml⽂件:^([a-zA-Z]+-?)+[a-zA-Z0-9]+\\.[x|X][m|M][l|L]$26 中⽂字符的正则表达式:[\u4e00-\u9fa5]27 双字节字符:[^\x00-\xff] (包括汉字在内,可以⽤来计算字符串的长度(⼀个双字节字符长度计2,ASCII字符计1))28 空⽩⾏的正则表达式:\n\s*\r (可以⽤来删除空⽩⾏)29 HTML标记的正则表达式:<(\S*?)[^>]*>.*?</\1>|<.*? /> (⽹上流传的版本太糟糕,上⾯这个也仅仅能部分,对于复杂的嵌套标记依旧⽆能为⼒)30 ⾸尾空⽩字符的正则表达式:^\s*|\s*$或(^\s*)|(\s*$) (可以⽤来删除⾏⾸⾏尾的空⽩字符(包括空格、制表符、换页符等等),⾮常有⽤的表达式)31 腾讯QQ号:[1-9][0-9]{4,} (腾讯QQ号从10000开始)32 中国邮政编码:[1-9]\d{5}(?!\d) (中国邮政编码为6位数字) 33 IP地址:\d+\.\d+\.\d+\.\d+ (提取IP地址时有⽤) 34 IP地址:((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d))20个正则表达式必知(能让你少写1,000⾏代码)正则表达式(regular expression)描述了⼀种字符串匹配的模式,可以⽤来检查⼀个串是否含有某种⼦串、将匹配的⼦串做替换或者从某个串中取出符合某个条件的⼦串等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
验证一年的12个月:“^(0?[1-9]|1[0-2])$”正确格式为:“01”-“09”和“1”“12”
验证一个月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$”
正确格式为:“01”“09”和“1”“31”。
匹配中文字符的正则表达式: [u4e00-u9fa5]
^[1-9]d*.d*|0.d*[1-9]d*$ //匹配正浮点数
^-([1-9]d*.d*|0.d*[1-9]d*)$ //匹配负浮点数
^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$ //匹配浮点数
^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$ //匹配非负浮点数(正浮点数 + 0)
举例2:表达式 "bcd",在匹配字符串 "abcde" 时,匹配结果是:成功;匹配到的内容是:"bcd";匹配到的位置是:开始于1,结束于4。
--------------------------------------------------------------------------------
只能输入数字:“^[0-9]*$”
只能输入n位的数字:“^d{n}$”
只能输入至少n位数字:“^d{n,}$”
只能输入m-n位的数字:“^d{m,n}$”
只能输入零和非零开头的数字:“^(0|[1-9][0-9]*)$”
只能输入有两位小数的正实数:“^[0-9]+(.[0-9]{2})?$”
匹配双字节字符(包括汉字在内):[^x00-xff]
匹配空行的正则表达式:n[s| ]*r
匹配HTML标记的正则表达式:/<(.*)>.*|<(.*) />/
匹配首尾空格的正则表达式:(^s*)|(s*$)
匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
1. 正则表达式规则
1.1 普通字符
字母、数字、汉字、下划线、以及后边章节中没有特殊定义的标点符号,都是"普通字符"。表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的一个字符。
举例1:表达式 "c",在匹配字符串 "abcde" 时,匹配结果是:成功;匹配到的内容是:"c";匹配到的位置是:开始于2,结束于3。(注:下标从0开始还是从1开始,因当前编程语言的不同而可能不同)
(2)应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现
String.prototype.trim = function()
{
return this.replace(/(^s*)|(s*$)/g, "");
}
(3)应用:利用正则表达式分解和转换IP地址
表达式
可匹配
\^
匹配 ^ 符号本身
\$
匹配 $ 符号本身
\.
匹配小数点(.)本身
这些转义字符的匹配方法与 "普通字符" 是类似的。也是匹配与之相同的一个字符。
举例1:表达式 "\$d",在匹配字符串 "abc$de" 时,匹配结果是:成功;匹配到的内容是:"$d";匹配到的位置是:开始于3,结束于5。
评注:提取ip地址时有用
匹配特定数字:
^[1-9]d*$ //匹配正整数
^-[1-9]d*$ //匹配负整数
^-?[1-9]d*$ //匹配整数
^[1-9]d*|0$ //匹配非负整数(正整数 + 0)
^-[1-9]d*|0$ //匹配非正整数(负整数 + 0)
匹配空白行的正则表达式:ns*r
评注:可以用来删除空白行
匹配HTML标记的正则表达式:<(S*?)[^>]*>.*?|<.*? />
评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力
匹配首尾空白字符的正则表达式:^s*|s*$
评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式
匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
评注:表单验证时很实用
匹配网址URL的正则表达式:[a-zA-z]+://[^s]*
(5)应用:利用正则表达式限制网页表单里的文本框输入内容
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'') "onbeforepaste="clipboardData.setData(''text'',clipboardData.getData(''text'').replace(/[^u4E00-u9FA5]/g,''))"
评注:网上流传的版本功能很有限,上面这个基本可以满足需求
匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
评注:表单验证时很实用
匹配国内电话号码:d{3}-d{8}|d{4}-d{7}
评注:匹配形式如 0511-4405222 或 021-87888822
验证电话号码:“^((d{3,4})|d{3,4}-)?d{7,8}$”
正确格式为:“XXXX-XXXXXXX”,“XXXX-XXXXXXXX”,“XXX-XXXXXXX”,
“XXX-XXXXXXXX”,“XXXXXXX”,“XXXXXXXX”。
验证身份证号(15位或18位数字):“^d{15}|d{}18$”
用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,'') "onbeforepaste="clipboardData.setData(''text'',clipboardData.getData(''text'').replace(/[^uFF00-uFFFF]/g,''))"
^[a-z]+$ //匹配由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$ //匹配由数字和26个英文字母组成的字符串
^w+$ //匹配由数字、26个英文字母或者下划线组成的字符串
在使用RegularExpressionValidator验证控件时的验证功能及其验证表达式介绍如下:
只能输入有1-3位小数的正实数:“^[0-9]+(.[0-9]{1,3})?$”
只能输入非零的正整数:“^+?[1-9][0-9]*$”
只能输入非零的负整数:“^-[1-9][0-9]*$”
只能输入长度为3的字符:“^.{3}$”
只能输入由26个英文字母组成的字符串:“^[A-Za-z]+$”
只能包含字符、数字和下划线。
验证是否含有^%&'',;=?$"等字符:“[^%&'',;=?$x22]+”
只能输入汉字:“^[u4e00-u9fa5],{0,}$”
验证Email地址:“^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$”
验证InternetURL:“^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$”
常用正则表达式大全!(例如:匹配中文、匹配html)
匹配中文字符的正则表达式: [u4e00-u9fa5]
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了
匹配双字节字符(包括汉字在内):[^x00-xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
}
else
{
throw new Error("Not a valid IP address!")
}
}
(4)应用:从URL地址中提取文件名的javascript程序
s="/page1.htm";
s=s.replace(/(.*/){0,}([^.]+).*/ig,"$2") ;//Page1.htm
1.2 简单的转义字符
一些不便书写的字符,采用在前面加 "\" 的方法。这些字符其实我们都已经熟知了。