Java常用的正则表达式验证

Java常用的正则表达式验证
Java常用的正则表达式验证

1public class Regex {

2

3/**

4* 检查 email输入是否正确

5* 正确的书写格式为 username@domain

6* @param value

7* @return

8*/

9public boolean checkEmail(String value, int length) {

10return

value.matches("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*")&&value.l ength()<=length;

11 }

12

13/**

14* 检查电话输入是否正确

15* 正确格式 012-87654321、0123-87654321、0123-7654321

16* @param value

17* @return

18*/

19public boolean checkTel(String value) {

20return value.matches("\\d{4}-\\d{8}|\\d{4}-\\d{7}|\\d(3)-\\d(8)");

21 }

22

23/**

24* 检查手机输入是否正确

25*

26* @param value

27* @return

28*/

29public boolean checkMobile(String value) {

30return value.matches("^[1][3,5]+\\d{9}");

31 }

32

33/**

34* 检查中文名输入是否正确

35*

36* @param value

37* @return

38*/

39public boolean checkChineseName(String value, int length) {

40return value.matches("^[\u4e00-\u9fa5]+$")&&value.length()<=length;

41 }

42/**

43* 检查HTML 中首尾空行或空格

44* @param value

45* @return

46*/

47public boolean checkBlank(String value){

48return value.matches("^\\s*|\\s*$");

49 }

50/**

51* 检查字符串是否含有HTML标签

52* @param value

53* @return

54*/

55

56public boolean checkHtmlTag(String value){

57return value.matches("<(\\S*?)[^>]*>.*?|<.*? />");

58 }

59/**

60* 检查URL是否合法

61* @param value

62* @return

63*/

64public boolean checkURL(String value){

65return value.matches("[a-zA-z]+://[^\\s]*");

66 }

67/**

68* 检查IP是否合法

69* @param value

70* @return

71*/

72public boolean checkIP(String value){

73return value.matches("\\d{1,3}+\\.\\d{1,3}+\\.\\d{1,3}+\\.\\d{1,3}");

74 }

75/**

76* 检查ID是否合法,开头必须是大小写字母,其他位可以有大小写字符、数字、下划线

77* @param value

78* @return

79*/

80public boolean checkID(String value){

81return value.matches("[a-zA-Z][a-zA-Z0-9_]{4,15}$");

82 }

83/**

84* 检查QQ是否合法,必须是数字,且首位不能为0,最长15位

85* @param value

86* @return

87*/

88

89public boolean checkQQ(String value){

90return value.matches("[1-9][0-9]{4,13}");

91 }

92/**

93* 检查邮编是否合法

94* @param value

95* @return

96*/

97public boolean checkPostCode(String value){

98return value.matches("[1-9]\\d{5}(?!\\d)");

99 }

100/**

101* 检查身份证是否合法,15位或18位

102* @param value

103* @return

104*/

105public boolean checkIDCard(String value){

106return value.matches("\\d{15}|\\d{18}");

107 }

108/**

109* 检查输入是否超出规定长度

110* @param length

112* @param value

113* @return

114*/

115public boolean checkLength(String value, int length) {

116return((value == null|| "".equals(value.trim())) ? 0 : value.length()) <= length;

117 }

118

119/**

120* 检查是否为空字符串,空:true,不空:false

121*

122* @param value

123* @return

124*/

125public boolean checkNull(String value){

126return value == null || "".equals(value.trim());

127 }

128

129 }

JS正则表达式大全

JS正则表达式大全 JS正则表达式大全【1】 正则表达式中的特殊字符【留着以后查用】字符含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界。 -或- 对正则表达式功能字符的还原,如"*"匹配它前面元字符0次或多次,/a*/将匹配a,aa,aaa,加了"\"后,/a\*/将只匹配"a*"。 ^ 匹配一个输入或一行的开头,/^a/匹配"an A",而不匹配"An a" $ 匹配一个输入或一行的结尾,/a$/匹配"An a",而不匹配"an A" * 匹配前面元字符0次或多次,/ba*/将匹配b,ba,baa,baaa + 匹配前面元字符1次或多次,/ba*/将匹配ba,baa,baaa ? 匹配前面元字符0次或1次,/ba*/将匹配b,ba (x) 匹配x保存x在名为$1...$9的变量中 x|y 匹配x或y {n} 精确匹配n次 {n,} 匹配n次以上 {n,m} 匹配n-m次 [xyz] 字符集(character set),匹配这个集合中的任一一个字符(或元字符) [^xyz] 不匹配这个集合中的任何一个字符 [\b] 匹配一个退格符 \b 匹配一个单词的边界 \B 匹配一个单词的非边界 \cX 这儿,X是一个控制符,/\cM/匹配Ctrl-M \d 匹配一个字数字符,/\d/ = /[0-9]/ \D 匹配一个非字数字符,/\D/ = /[^0-9]/ \n 匹配一个换行符 \r 匹配一个回车符 \s 匹配一个空白字符,包括\n,\r,\f,\t,\v等 \S 匹配一个非空白字符,等于/[^\n\f\r\t\v]/ \t 匹配一个制表符 \v 匹配一个重直制表符 \w 匹配一个可以组成单词的字符(alphanumeric,这是我的意译,含数字),包括下划线,如[\w]匹配

表单验证和正则表达式

正则表达式和表单验证 主要内容 ?什么是表单的验证 ?表单的操作 ?表单的验证 ?正则表达式的定义 ?正则表达式验证 (一)什么是表单的验证 表单的验证 在JavaScript之前,所有的验证都是发生在服务器上,增加了反应 时间 使用JavaScript验证,则在数据提交到服务器端之前进行一系列的 判断,比如数据不全或无效则取消提交,同时再提示重新输入. 表单的验证一般有两种形式 一个是在button按钮的onclick事件上完成,如果返回false则取消 提交 在提交按钮的onsubmit事件完成,如果返回false,表单不提交 常见的验证 文本框是否为空? 选择型的表单是否选择? 用户输入的邮件地址是否合法? 用户是否已输入合法的日期? (二)表单的操作 引用表单域 根据表单的名字获取表单的引用 var myForm = doucument.forms[“name”];

根据表单数组获取 var myForm = document.forms[0]; 表单中的属性 表单中的方法 表单中的事件 表单域中的通用属性 disabled属性 name属性:name的属性值是可以通过JavaScript改变 form属性:通过form属性可以获得一个表单域所在的表单 表单域中的通用方法 ?focus()方法 ?blur()方法

表单域中的通用事件 onfocus和onblur事件 onclick、onkeydown、onkeyup和onkeypress事件 onmouseover、onmouseout、onmousedown、和onmouseup事件 onchange事件 使用文本域 获取和设置文本域的值 使用select方法选中文本 使用按钮类表单域 简单按钮:最常用的方法捕获onclick事件,然后执行代码 复选按纽:通过checked属性获取,选中时是true,否则为false. 单选按钮:通过checked属性获取,选中时是true,否则为false. 使用下拉列表框 获取和设置下拉列表框的值 下拉列表框的值表示被选中的option标记的value属性 获取选项的个数 select对象有一个length属性,表示选项的个数 获取当前选项的索引 select对象中使用selectedIndex属性获取当前选中的option对象的索引 获取所有选项的集合 用options属性表示所有option组成的集合,option的value代表其值,text属性 代表其中间的文本,selected属性决定该option是否被选中 为select动态添加选项 在所有的option后面添加一个新的选项 Select.options[select.length] = new Option(“optiontext”,”value”); 从select中删除一个选项 ?Select.options[1] = null; 清空一个select 替换一个选项 Select.options[0] = new Option(“optiontext”,”value”);

正则表达式

本文分十四个类别对正则表达式的意义进行了解释,这十四各类别是:字符/字符类/预定义字符类/POSIX字符类/https://www.360docs.net/doc/8a11514984.html,ng.Character类/Unicode块和类别的类/边界匹配器/Greedy数量词/Reluctant数量词/Possessive数量词/Logical运算符/Back引用/引用/特殊构造。 1.1.字符 x 字符 x。例如a表示字符a \\ 反斜线字符。在书写时要写为\\\\。(注意:因为java在第一次解析时把\\\\解析成正则表达式\\,在第二次解析时再解析为\,所以凡是不是1.1列举到的转义字符,包括1.1的\\,而又带有\的都要写两次) \0n 带有八进制值 0的字符 n (0 <= n <= 7) \0nn 带有八进制值 0的字符 nn (0 <= n <= 7) \0mnn 带有八进制值 0的字符 mnn(0 <= m <= 3、0 <= n <= 7) \xhh 带有十六进制值 0x的字符 hh \uhhhh 带有十六进制值 0x的字符 hhhh \t 制表符 ('\u0009') \n 新行(换行)符 ('\u000A') \r 回车符 ('\u000D') \f 换页符 ('\u000C') \a 报警 (bell) 符 ('\u0007') \e 转义符 ('\u001B') \cx 对应于 x 的控制符 1.2.字符类 [abc] a、b或 c(简单类)。例如[egd]表示包含有字符e、g或d。 [^abc] 任何字符,除了 a、b或 c(否定)。例如[^egd]表示不包含字符e、g或d。 [a-zA-Z] a到 z或 A到 Z,两头的字母包括在内(范围) [a-d[m-p]] a到 d或 m到 p:[a-dm-p](并集) [a-z&&[def]] d、e或 f(交集) [a-z&&[^bc]] a到 z,除了 b和 c:[ad-z](减去) [a-z&&[^m-p]] a到 z,而非 m到 p:[a-lq-z](减去) 1.3.预定义字符类(注意反斜杠要写两次,例如\d写为\\d) . 任何字符(与行结束符可能匹配也可能不匹配) \d 数字:[0-9] \D 非数字: [^0-9] \s 空白字符:[ \t\n\x0B\f\r] \S 非空白字符:[^\s] \w 单词字符:[a-zA-Z_0-9] \W 非单词字符:[^\w] 1.4.POSIX 字符类(仅 US-ASCII)(注意反斜杠要写两次,例如\p{Lower}写为\\p{Lower})

正则表达式写的form表单验证

希望能帮助更多的人,可以加我qq交流504781715 formzzbds.html