正则表达式-基础使用整理

在Sun的Java JDK 1.40版本中,Java自带了支持正则表达式的包 使用java.util.regex包。

 Pattern pattern =  Pattern.compile("(\\(\\d{3}\\)|\\d{3})\\s?\\d{3}(-|)?\\d{4}");

中国电话号码验证

匹配形式如:0511-4405222 或者021-87888822 或者 021-44055520-555 或者 (0511)4405222

正则表达式 "((d{3,4})|d{3,4}-)?d{7,8}(-d{3})*"

中国邮政编码验证

匹配形式如:215421

正则表达式 "d{6}"

电子邮件验证

匹配形式如:justali@justdn.com

正则表达式 "w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*"

身份证验证

匹配形式如:15位或者18位身份证

正则表达式 "d{18}|d{15}"

常用数字验证

正则表达式

"d{n}" n为规定长度

"d{n,m}" n到m的长度范围

非法字符验证

匹配非法字符如:< > & / ' |

正则表达式 [^<>&/|'\]+

日期验证

匹配形式如:20030718,030718

范围:1900--2099

正则表达式((((19){1}|(20){1})d{2})|d{2})[01]{1}d{1}[0-3]{1}d{1}

"^\d+$"  //非负整数(正整数 + 0)

"^[0-9]*[1-9][0-9]*$"  //正整数

"^((-\d+)|(0+))$"  //非正整数(负整数 + 0)

"^-[0-9]*[1-9][0-9]*$"  //负整数

"^-?\d+$"    //整数

"^\d+(\.\d+)?$"  //非负浮点数(正浮点数 + 0)

"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$"  //正浮点数

"^((-\d+(\.\d+)?)|(0+(\.0+)?))$"  //非正浮点数(负浮点数 + 0)

"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"  //负浮点数

"^(-?\d+)(\.\d+)?$"  //浮点数

"^[A-Za-z]+$"  //由26个英文字母组成的字符串

"^[A-Z]+$"  //由26个英文字母的大写组成的字符串

"^[a-z]+$"  //由26个英文字母的小写组成的字符串

"^[A-Za-z0-9]+$"  //由数字和26个英文字母组成的字符串

"^\w+$"  //由数字、26个英文字母或者下划线组成的字符串

"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"    //email地址

"^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"  //url

密码
<td valign="top" class="pwdChkTd2"><input name="pc001" type="password" id="inputPC" autocomplete="off" value="" style="ime-mode:disabled" onKeyUp="EvalPwdStrength(document.forms[0],this.value);">
<td class="pwdChkTd1" align="right">强度:</td><td valign="top" class="pwdChkTd2">
<table cellpadding="0" cellspacing="0" class="pwdChkTbl2">
<tr>
<td id="idSM1" width="25%" class="pwdChkCon0" align="center">
<span style="font-size:1px"> </span>
<span id="idSMT1" style="display:none;">弱</span>
</td>
<td id="idSM2" width="25%" class="pwdChkCon0" align="center" style="border-left:solid 1px #fff">
<span style="font-size:1px"> </span>
<span id="idSMT0" style="display:inline;font-weight:normal;color:#666">无</span>
<span id="idSMT2" style="display:none;">中等</span>
</td>
<td id="idSM3" width="25%" class="pwdChkCon0" align="center" style="border-left:solid 1px #fff">
<span style="font-size:1px"> </span>
<span id="idSMT3" style="display:none;">强</span>
</td>
<td id="idSM4" width="25%" class="pwdChkCon0" align="center" style="border-left:solid 1px #fff">
<span style="font-size:1px"> </span>
<span id="idSMT4" style="display:none;">最好</span>
</td>
</tr>
</table>

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏五分钟学算法

每天一算:Two Sum II

示例: 输入: numbers = [2, 7, 11, 15], target = 9 输出: [1,2] 解释: 2 与 7 之和等于目标数 9 。因此 i...

452
来自专栏韦弦的微信小程序

Swift 只出现一次的数字 - LeetCode

给定一个整数数组,除了某个元素外其余元素均出现两次。请找出这个只出现一次的元素。 备注: 你的算法应该是一个线性时间复杂度。 你可以不用额外空间来实现它吗?

701
来自专栏和蔼的张星的图像处理专栏

365. 二进制中有多少个1

思路一:遍历每一位,如果是1,计数器加1即可,也是最容易想到的,需要遍历一次,可以用不断除2来做,也可以用位操作,后者更简单些:

712
来自专栏Bingo的深度学习杂货店

最长01相等子串

给一个只由0和1组成的字符串,找一个最长的子串,要求这个子串里面0和1的数目相等。 解题思路: 这样一种巧妙的解法:定义一个数据 B[N], B[i] 表示 A...

2924
来自专栏数据结构与算法

牛客提高R5 A.同余方程

设\(solve(x, y)\)表示\(i \in [0, x], j \in [0, y]\)满足题目要求的方案数

921
来自专栏用户2442861的专栏

异或的应用 及剑指offer 面试 40 数组中只出现一次的数字

转载请注明出处:http://blog.csdn.net/ns_code/article/details/27568975

942
来自专栏赵俊的Java专栏

恢复旋转排序数组

1122
来自专栏柠檬先生

Python基础 List和Tuple类型

python 创建list     python 内置一种数据类型是列表: 列表是一种有序的集合,可以随时添加和     删除其中的元素,list 中的元素是按...

3276
来自专栏ACM算法日常

分割排序(排序)- HDU 1106

输入一行数字,如果我们把这行数字中的‘5’都看成空格,那么就得到一行用空格分割的若干非负整数(可能有些整数以‘0’开头,这些头部的‘0’应该被忽略掉,除非这个整...

561
来自专栏小二的折腾日记

LeetCode-60-Permutation-Sequence

同样是排列 组合的问题,这次不需要打印所有的排列了,只需要按照排列的顺序打印出第k个,很显然,思路不会是列出所有的排列,然后找第k个打印出来是吧。

694

扫码关注云+社区