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学习笔记二——正则表达式的更多相关文章

  1. 【java学习笔记】正则表达式

    一.正则表达式 1.预定义字符集  . 表示任意一个字符 \d 表示任意一个数字 \w 表示任意一个单词字符(只能是数字.字母.下划线) \s 表示任意一个空白字符(\t\r\n\f\x0B) \D ...

  2. Java学习笔记二十九:一个Java面向对象的小练习

    一个Java面向对象的小练习 一:项目需求与解决思路: 学习了这么长时间的面向对象,我们只是对面向对象有了一个简单的认识,我们现在来做一个小练习,这个例子可以使大家更好的掌握面向对象的特性: 1.人类 ...

  3. 9.1(java学习笔记)正则表达式

    一.正则表达式 1.1正则表达式 正则表达式是描述一种规则,通过这个规则可以匹配到一类字符串. 2.1正则语法 2.1.1普通字符:字母.数字.下划线.汉字以及没有特殊意义的符号都是普通字符. 正则表 ...

  4. java学习笔记之正则表达式

    一般来说,正则表达式就是以某种方式来描述字符串,因此你可与说:"如果一个字符串符合有这些东西,那么它就是我正在找的东西. 1.要找一个数字,如果它可能有一个负号在最前面(可能没有,没有也是匹 ...

  5. 数组排序、递归——(Java学习笔记二)

    升序:      选择排序:         选定一个元素,一次和后面的元素相比较,如果选定的元素大雨后面的比较元素,就交换位置         先出现最小值,最后出现最大值. public stat ...

  6. Java学习笔记二:数据类型II

    GitHub代码练习地址:https://github.com/Neo-ML/JavaPractice/blob/master/Intpractice3.java 一  Java中的数据类型 Java ...

  7. Java学习笔记二十八:Java中的接口

    Java中的接口 一:Java的接口: 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明.一个类通过继承接口的方式,从而来继承 ...

  8. Java学习笔记二十七:Java中的抽象类

    Java中的抽象类 一:Java抽象类: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就 ...

  9. Java学习笔记二十五:Java面向对象的三大特性之多态

    Java面向对象的三大特性之多态 一:什么是多态: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比 ...

随机推荐

  1. Subband Decomposition

    子带分解. 例如语音信号是宽带信号,根据奈奎斯特采样定理,采样率为16kHz的语音信号的有效带宽是8KHz,不论是对于降噪,aec,vad,波束形成亦或是logfbank特征提取,我们都期望更精细的处 ...

  2. BZOJ 2091: [Poi2010]The Minima Game 博弈dp

    十分有趣的问题. 我们发现如果拿的话肯定要先拿一些大的. 所以我们可以先将所有数从小到大排序,令 $f[i]$ 表示拿完前 $i$ 小先手-后手的最大值. 则有转移:$f[i]=max(f[i-1], ...

  3. cube.js 通过presto-gateway 进行连接

    cube.js 对于presto 的支持是通过presto-client 刚好简单修改了一个可以支持presto-gateway 连接的 以下是一个简单的集成,以及关于集成中原有的一些修改 环境准备 ...

  4. ksh与bash的异同

    (1) 在ksh是,数组的index只能从0到1023,而bash中没有这样的限制. (2) ksh与bash初始化数组的语法不同: 如下所示 icymoon# ksh icymoon# set -A ...

  5. 关于单片机的RAM

    一块RAM 分为了 堆 和 栈   名词而已,知道就可以了, 各种内存溢出问题: 全局数组访问越界 出现的问题:直接重启,或者死机 解决办法 :  额,写好自己的程序吧!!!!!!! 函数的局部变量过 ...

  6. A1113 | Integer Set Partition (25)

    太简单了 #include <stdio.h> #include <memory.h> #include <math.h> #include <string& ...

  7. js读取sqlserver数据库,输出至html

    代码: <!DOCTYPE html> <html> <head>   <meta charset="utf-8">   <m ...

  8. 利用 Matplotlib 绘图

    各类绘图 ## 导入包 import matplotlib as mpl import matplotlib.pyplot as plt import seaborn as sns ## 参数设置 # ...

  9. 终于明白为什么要加 final 关键字了!

    阅读本文大概需要 2.8 分钟. 来源: www.jianshu.com/p/acc8d9a67d0c 在开发过程中,由于习惯的原因,我们可能对某种编程语言的一些特性习以为常,特别是只用一种语言作为日 ...

  10. Salt Highstate数据结构定义

    作者言 这篇文档详细解释了SLS文件中,每个部分的名称与含义,以及SLS中的数据处理后的数据结构. 我只是SaltStack的初学者,如果文中有错误的地方,请不吝赐教.在学习的过程,我做了一些实验,犯 ...