Java 中正则表达式是在Java 1.4版本以后才出现的。在java.util.regex包中Pattern类中列出了全部正则表达式内容,下面是列出几个常用正则表达式具体含义:
NO.
|
表达式
|
描述
|
1
|
[abc]
|
表示取值可能是a,可能是b,可能是c
|
2
|
[^abc]
|
表示取值不是a,b,c的任意一个内容
|
3
|
[a-zA-Z]
|
表示全部字母,大小写都可,[a-z]表示小写字母
|
4
|
\d
|
表示有数字组成
|
5
|
\D
|
表示有非数字组成
|
6
|
\s
|
表示有空格组成,空格包含”\n”,”\t”之类的
|
7
|
\S
|
表示有非空格组成
|
8
|
\w
|
表示有字母,数字,下划线组成
|
9
|
\W
|
表示有非字母,数字,下划线组成
|
10
|
X|Y
|
要么是正则X,要么是正则Y
|
11
|
(X)
|
表示一组规范
|
|
|
|
|
举几个例子,看看正则表达式在Java中是如何运用的:
(1)、// 验证 First Name 是不是以大写字母开头的一个英文单词
else if (!firstTextField.getText().matches("[A-Z][a-zA-Z]*")) {
JOptionPane.showMessageDialog(this, "First Name非法!");
}
(2)、 // 验证 Last Name 是不是以大写字母开头的一个英文单词
else if (!lastTextField.getText().matches("[A-Z][a-zA-Z]*")) {
JOptionPane.showMessageDialog(this, "Last Name非法!");
}
(3)、 // 验证地址是否为数字开始,并包含一个单词或者两个单词
else if (!addressTextField.getText().matches(
"\\d+\\s+([a-zA-Z]+|[a-zA-Z]+\\s[a-zA-Z]+)")) {
JOptionPane.showMessageDialog(this, "地址非法!");
}
(4)、 // 验证邮政编码是否为一个5位数的数字
else if (!zipTextField.getText().matches("\\d{5}")) {
JOptionPane.showMessageDialog(this, "邮政编码非法!");
}
(5)、 // 验证电话号码的格式是否为123-456-7890
// 并且区号和电话号码的第1位不能是数字0
else if (!phoneTextField.getText().matches(
"[1-9]\\d{2}-[1-9]\\d{2}-\\d{4}")) {
JOptionPane.showMessageDialog(this, "非法的电话号码!");
}
(6)、 // 验证字符串是否仅仅包含中文
else if (!chineseTextField.getText().matches("[\u4E00-\u9FA5]+")) {
JOptionPane.showMessageDialog(this, "只能输入中文!");
}
(7)、// 验证邮件地址
对于Email验证来说,域名的后缀只有有限几个,
分别是:”com,com.cn,net.cn,org,edu,gov”。
其正则表示为:
”\\w+@\\w+.(com|com.cn|cn|net.cn|org|edu|gov)”
01、"^\\d+$" //非负整数(正整数 + 0)
02、"^[0-9]*[1-9][0-9]*$" //正整数
03、"^((-\\d+)|(0+))$" //非正整数(负整数 + 0)
04、"^-[0-9]*[1-9][0-9]*$" //负整数
05、"^-?\\d+$" //整数
06、"^\\d+(\\.\\d+)?$" //非负浮点数(正浮点数 + 0)
07、"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$" //正浮点数
08、"^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$" //非正浮点数(负浮点数 + 0)
09、"^(-(([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*)?$" //url
常用正则表达式
B;F#\"Xv&I,A9e0 正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。
分享到:
相关推荐
在Java中使用正则表达式来判断字符串是否符合整数、小数或实数的格式是一种常见且有效的做法。在编程中,我们经常需要对输入的字符串进行格式验证,以确保它们符合预期的数值格式,尤其是在处理财务数据、用户输入...
在Java编程中,正则表达式被广泛应用于数据验证、文本提取、字符串处理等多个场景。以下是对Java中正则表达式使用的一些核心概念和常用模式的详细解释: 1. **正则表达式编译与匹配过程**: - 正则表达式首先需要...
精通正则表达式第三版 搜集于网络 前言..........I 第1章:正则表达式入门.... 1 解决实际问题... 2 作为编程语言的正则表达式... 4 以文件名做类比... 4 以语言做类比... 5 正则表达式的知识框架... 6 对于...
jquery 正整数数字校验正则表达式JavaScript正则表达式校验非零的正整数实例利用js正则表达式...Java正则表达式校验邮箱与手机号jQuery中校验时间格式的正则表达式小结校验普通电话、传真号码的正则表达式(可以+开头...
#### 四、小结 通过上述内容可以看出,《正则表达式口袋参考书》涵盖了多种主流编程语言下的正则表达式实现细节,对于想要深入学习这一领域的开发者来说,是一本非常有价值的参考书籍。无论是在日常开发工作中还是在...
中国移动 134.135.136.137.138.139.150.151.152.157.158.159.187.188 ,147(数据卡) 中国联 通130.131.132.155.156.185.186 中国电信133.153.180.189 CDMA 133,153 正 则如下: 代码如下: /// <summary> /// 匹配移动...
随着时间的发展,不同的开发者独立开发了多种质量、功能和复杂度各不异的Java正则表达式包。直到2002年,随着Java 1.4的发布,Sun公司正式推出了其内置的`java.util.regex`包,为Java社区提供了一个标准的正则表达式...
#### 小结 本文介绍了正则表达式的基础语法及其在 Java 字符串中的应用,并详细讨论了 `String` 和 `StringBuilder` 类的特性和方法。同时,还解释了 `Object` 类的重要性以及自动装箱和拆箱的概念。这些知识点对于...
### 小结 - **正则表达式**作为一种强大的文本处理工具,在多种编程语言中都有广泛应用。 - 《Mastering Regular Expressions, 3rd Edition》不仅适合从未接触过正则表达式的读者入门学习,也适合已有基础的读者...
javascript正则表达式用法: 代码如下:function checkreg(myreg,mytext) { if(myreg.test(mytext) { alert(“ok”); return true; } else { return false; } } //另一种写法 代码如下:function checkreg...
元字符 ^ $ . * + ? = ! : | \ / ( ) [ ] { } 在使用这些符号时需要用“\”来进行转移。 如果记不清楚那些标点符号需要转移,可以在使用标点符号时都使用反斜杠“\” 简单匹配 1、直接量 /javascript/ 匹配带有...
`target`和`replacement`都是普通的字符串,不涉及正则表达式。例如,在`"abac".replace("a", "\\a")`中,`"a"`被`\a`替换,结果为`"\ab\ac"`,因为`\\`表示一个反斜线。 2. `replaceAll(String regex, String ...
本文将介绍两种方法来获取Java中的文件扩展名:使用正则表达式和字符串截取。 ### 使用正则表达式获取文件扩展名 正则表达式是一种强大的文本匹配工具,可以用来匹配、查找和提取特定模式的字符串。在Java中,我们...
javascript中的match函数是使用正则表达式对字符串进行查找,并将查找的结果作为数组返回,在实际开发中非常的有用,使用方法如下: stringObj.match(rgExp) 其中stringObj是必选项。对其进行查找的 String 对象或字符...
以上是对给定文件中涉及到的计算机科学相关知识点的详细解释,涵盖了软件开发方法、算法分析、数据结构、Java编程、数据库设计、I/O操作、正则表达式、GUI编程、线程管理和Java Applet等多个方面。
8. **正则表达式**:正则表达式是用于匹配字符串模式的强大工具,在输入验证、数据提取等方面非常有用。例如,可以使用正则表达式检查用户输入的格式是否正确。 9. **格式化显示**:Java提供了一系列的类,如...
#### 五、实验小结 通过本次实验,不仅巩固了对Java中字符串、正则表达式、数学运算、日期处理以及集合框架的理解,还提高了编程实践能力和问题解决能力。实验过程中的问题记录与解决也为后续的学习提供了宝贵的参考...
总之,`String.split()`方法是Java中进行字符串切割的重要工具,正确理解和使用正则表达式转义规则是关键。在编写代码时,一定要注意特殊字符的处理,确保它们被正确地解析为分隔符,而不是正则表达式的一部分。同时...