介绍

这篇文章主要讲解了“golang正则表达式是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“golang正则表达式是什么”吧!

去(又称golang)是谷歌的罗伯特?Griesemer Rob Pike及Ken Thompson开发的一种静态强类型,编译型语言.Go语言语法与C相近,但功能上有:内存安全,GC(垃圾回收),结构形态及CSP-style并发计算。

罗伯特·格瑞史莫(Robert Griesemer),罗勃·派克(Rob Pike)及肯·汤普逊(Ken Thompson)于2007年9月开始设计,稍后伊恩?兰斯泰勒拉斯考克斯加入项目.Go是基于地狱操作系统所开发的.Go于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后来追加了Windows系统下的实现。在2016年,去被软件评价公司TIOBE选为“TIOBE 2016年最佳语言”。目前,去每半年发布一个二级版本(即从a.x升级到。y) .

下面看下golang正则表达式。

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]+ \ [1 - 9][0 - 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]+ \ [1 - 9][0 - 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 $
4由26个英文字母组成的字符串:^ [A-Za-z] + $
5由26个大写英文字母组成的字符串:^ [a - z] + $
6由26个小写英文字母组成的字符串:^ [a - z] +
7美元由数字和26个英文字母组成的字符串:^ [A-Za-z0-9] +
8美元由数字,26个英文字母或者下划线组成的字符串:^ \ w +美元或^ \ w {20} 3 $
, 9中文,英文,数字包括下划线:^ [\ u4E00 - \ u9FA5A-Za-z0-9_] +
10美元中文,英文,数字但不包括下划线等符号:^ [\ u4E00 - \ u9FA5A-Za-z0-9] +美元或^ [\ u4E00 - \ u9FA5A-Za-z0-9] {2, 20}
11美元可以输入含有^ %,& # 39;;=? \“美元等字符:[^ %,& # 39;;=?$ \将]+ 12禁止输入含有~的字符:[^ ~ \将]+

<强>三,特殊需求表达式

1邮件地址:^ \ 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}) +/?br/> 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 - 4405222,021 - 87888822):\ 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_] {15} 4 $
10密码(以字母开头,长度在6 ~ 18之间,只能包含字母,数字和下划线):^ [a-zA-Z] \ w {5、17}
11美元强密码(必须包含大小写字母和数字的组合,不能使用特殊字符,长度在8 - 10之间):^ (?=. * \ d) (?=? [a - z]) (?=* [a - z])。{8 10}$