Java学习笔记二——正则表达式
Java正则表达式
正则表达式的规则
“abc” 匹配字符串abc
[abc] 匹配[]里任意一个字符
[a-z]: 匹配所有小写字母中的任意一个字符
[A-Z]: 匹配所有大写字母中的任意一个字符
[a-zA-Z]: 匹配所有大小写字母中的 任意一个字符
[0-9]: 匹配所有数字中的任意一个数字
[^0-9] 匹配数字之外中的任意一个字符 (^ 取反操作)
\d :匹配所有数字中的任意一个数字 等同于 [0-9]
\D : 匹配所有非数字中的任意一个字符
\w: 匹配数字 字母 下划线中的任意一个字符
\W: 匹配 数字 字母 下划线 以外中的任意一个字符
\s: 匹配空白字符(空格 tab 换行符)中的任意一个字符
\S: 匹配空白字符之外的任意一个字符
.:匹配换行符(\n)以外的任意一个字符
?匹配 0-1个字符 {0,1}
+ 匹配1-n个字符 {1,}
* 匹配0-n字符 {0,}
{n} 固定长度n个
{n,} 最少长度n,最大不限制
{n,m} 最少长度n,最大m
() 子表达式
| 或者
^ 以什么内容开头
$ 以什么结尾
字符串匹配
例:以a开头数字在中间以b结尾
String st1=”a1122b”;
st1.matchs(regex:”a\\d*b”) 匹配则返回true
qq邮箱正则
regex:”\\d+@(qq|163)\\.com”
手机号
以1开头,357689是第二位
regex:”1[3,5,6,7,8,9]\\d{9}”
年龄0-150
“\\d|\\d{2}|1[0-4]\\d|150”
Java里的正则
1.通过正则类pattern、Matcher类
Pattern的compile()获取pattern对象
import java.util.regex.Pattern;
Pattern pattern=Pattern.compile(“正则”);//放在方法之外
Matcher match=pattern.macher(input:“字符串”);//返回Marcher对象
if(match.matches()){“匹配成功“}
2.
Pattern.matches(regex:””,input:””);成功返回值是true
Java学习笔记二——正则表达式的更多相关文章
- 【java学习笔记】正则表达式
一.正则表达式 1.预定义字符集 . 表示任意一个字符 \d 表示任意一个数字 \w 表示任意一个单词字符(只能是数字.字母.下划线) \s 表示任意一个空白字符(\t\r\n\f\x0B) \D ...
- Java学习笔记二十九:一个Java面向对象的小练习
一个Java面向对象的小练习 一:项目需求与解决思路: 学习了这么长时间的面向对象,我们只是对面向对象有了一个简单的认识,我们现在来做一个小练习,这个例子可以使大家更好的掌握面向对象的特性: 1.人类 ...
- 9.1(java学习笔记)正则表达式
一.正则表达式 1.1正则表达式 正则表达式是描述一种规则,通过这个规则可以匹配到一类字符串. 2.1正则语法 2.1.1普通字符:字母.数字.下划线.汉字以及没有特殊意义的符号都是普通字符. 正则表 ...
- java学习笔记之正则表达式
一般来说,正则表达式就是以某种方式来描述字符串,因此你可与说:"如果一个字符串符合有这些东西,那么它就是我正在找的东西. 1.要找一个数字,如果它可能有一个负号在最前面(可能没有,没有也是匹 ...
- 数组排序、递归——(Java学习笔记二)
升序: 选择排序: 选定一个元素,一次和后面的元素相比较,如果选定的元素大雨后面的比较元素,就交换位置 先出现最小值,最后出现最大值. public stat ...
- Java学习笔记二:数据类型II
GitHub代码练习地址:https://github.com/Neo-ML/JavaPractice/blob/master/Intpractice3.java 一 Java中的数据类型 Java ...
- Java学习笔记二十八:Java中的接口
Java中的接口 一:Java的接口: 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明.一个类通过继承接口的方式,从而来继承 ...
- Java学习笔记二十七:Java中的抽象类
Java中的抽象类 一:Java抽象类: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就 ...
- Java学习笔记二十五:Java面向对象的三大特性之多态
Java面向对象的三大特性之多态 一:什么是多态: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比 ...
随机推荐
- BZOJ 2600: [Ioi2011]ricehub 双指针+贪心
不难发现,当我们要选的区间确定后,一定会把仓库安排到中间的稻草上(如果是偶数个的话中间两个都行). 然后按照坐标从小到大枚举右指针,左指针一定不递减,双指针扫一下就行了. code: #include ...
- ent 基本使用十四 edge
edge 在ent 中属于比较核心,同时也是功能最强大的,ent 提供了比较强大的关系模型 快速使用 参考图 以上包含了两个通过边定义的关系 pets/owner: user package sc ...
- shell札记
1.echo变量名的技巧 #! /bin/bash read -p "please input value a: " a declare -i ai=a echo -e " ...
- utility.py:61: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array in
utility.py:: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; ...
- python: isdigit int float 使用
>>> num1 = '2.0' >>> print num1.isdigit() False >>> num2 = ' >>> ...
- Redis Streams 介绍
Stream是Redis 5.0版本引入的一个新的数据类型,它以更抽象的方式模拟日志数据结构,但日志仍然是完整的:就像一个日志文件,通常实现为以只附加模式打开的文件,Redis流主要是一个仅附加数据结 ...
- docker安装 与 基本配置
1.安装docker #yum remove docker \ docker-common \ container-selinux \ docker-selinux \ docker-engine \ ...
- ModuleNotFoundError: No module named 'pymysql'
出现此提示表示系统中没有安装PyMySQL,可以通过pip PyMySQL进行安装. 安装之后,执行import pymysql仍然不可用! why? 检查后发现系统中存在python2与python ...
- Shell命令行提示定制
/******************************************************************************* * Shell命令行提示定制 * 说明 ...
- git 相关流程和报错解决
git 相关流程: 预先配置: gitroot $ git config user.name XXXgitroot $ git config user.email XXX@XXX.com git re ...