JAVA基本的正则表达式
来源:互联网 发布:国家注册审核员 知乎 编辑:程序博客网 时间:2024/05/17 23:06
我们经常需要对字符串什么的进行判断(邮编、电话号码、ip等等等等),不可能一直使用contains来判断吧,这就用到了我们今天的主题正则表达式
,下面我来讲一些简单的正则表达式
字符集(注:下面这种正则表达式
一般
用来表达一个包含
关系,就是说只要你要判断的字符串中只要满足这个规则就可以,我们就认定这个字符串符合要求)[1234]
表示 1,2,3,4之一[^1234]
表示 除了1,2,3,4[1-5]
表示 1,2,3,4,5[a-f]
表示 a-f之间[0-9a-fA-F]
表示 一个16进制字符0[xX][0-9a-fA-F]{1,8}
表示 整数的16进制表达式[\w-]{8-15}
表示 8-15个以字符、下划线、数字及“-”注:
{x,y}
表示长度范围是x到y预定字符集(一些特定的字符集)
\d
表示 [0-9].
表示 任意字符\w
表示 单词字符[0-9a-zA-Z_] (注:包含字符串)\s
表示 匹配空白:\t \n \r \b \p
\D
表示 非数字\S
表示 非空白\W
表示 非单词字符{m,n}
表示 数词m到n个{n}
表示 数词n个,比如表示“5个以上”用{5,}
?
表示 能出现0到1次{0,1}+
表示 能出现1到n次{1, n}*
表示 能出现0到n次{0,}正则表达式以
^
开头,$
结尾(这种就严格限制字符串必须符合规则,不再是包含
关系)常用正则表达式写法
邮政编码
^[0-9][0-9][0-9][0-9][0-9][0-9]$ 表示0-9的任意数字出现6次^[0-9]{6}$ 表示0-9的任意数字出现6次^\d{6}$ 表示0-9的任意数字出现6次
用户名规则
^\w{6,12}$ 表示可出现6到12个单词或字符
电话号码
^(\+86|0086)?\s?\d{11}$ 表示可以以+86或者0086然后可能跟上一个空格的11位的电话号码注“+”是特殊字符需要转义,所以用"\+"
身份证号码
^\d{17}[0-9xX]$ 表示17位数字加上一个数字或者x、X的身份证号码
一个点的坐标
^\d+(,\s*|\s+)\d+$ 表示(x,y)或(x, y)或(x y)的位置坐标
日期(下面的表达式根据的格式要求:yyyy-MM-dd)
^\d{4}-\d{2}-\d{2}$ 表示一个日期^\d{4}[-\d{2}]{2}$ 表示一个日期
案例测试:测试类
package com.eicky; import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * Created with IntelliJ IDEA. * Author: Eicky * Date: 2017/5/17 19:32 * Todo: regex test */ public class Test { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (true){ System.out.println("please input your regex: "); Pattern pattern = Pattern.compile(scanner.nextLine()); System.out.println("please input your text: "); Matcher matcher = pattern.matcher(scanner.nextLine()); System.out.println(matcher.find()); } } }
如果有错误的地方,还请指出.
阅读全文
0 0
- JAVA基本的正则表达式
- java正则表达式的基本用法
- java正则表达式的基本用法
- Java 正则表达式的基本语法
- java正则表达式的基本用法
- Java正则表达式的基本用法
- Java中正则表达式的基本使用
- java正则表达式的基本使用
- 基本的正则表达式
- 基本的正则表达式
- 基本的正则表达式
- java正则表达式基本符号
- java正则表达式基本符号
- java正则表达式基本符号
- java正则表达式基本符号
- Java正则表达式基本总结
- JAVA正则表达式基本运用
- Java的正则表达式的基本语法(不全)
- 面向对象纲要
- c/c++中运行外部程序
- linux netstat网络情况
- Android推送遇到的问题--app关闭后,点击通知后点击通知后app未初始化的问题
- AF_INET和PF_INET的细微不同
- JAVA基本的正则表达式
- 算法提高 排队打水问题
- Swift3 UIImage、Data、PNG图片之间的转换
- ice windows
- 【bzoj1941】[Sdoi2010]Hide and Seek
- 'release' is unavailable: not available in automatic reference counting modeAutomatic
- android 之RadioGroup 的换行
- SSL For Free 申请免费https SSL 凭证
- 腾讯互动直播 音频 视频 踩过的坑