java 数据类型String 【正则表达式】匹配
1,什么是正则表达式
2,如果判断正则表达式是否匹配
System.out.println("Hello49032432".matches("H\\w{4}\\d+")); //true
3, 匹配纯文本
严格匹配
System.out.println("China".matches("China")); //true
3, 点.匹配除换行符\n之外的任何单字符
System.out.println("A".matches("."));//true
System.out.println("\n".matches("."));//false
System.out.println("AA".matches("."));//false
System.out.println("AA".matches(".A"));//true
//要匹配.字符本身,请使用\.
System.out.println(".".matches("\\."));//true
4,匹配字符出现了n次,n包含0次,1次和多次
//匹配出现n次
System.out.println("aaaaaaa".matches("a{7}"));//true
System.out.println("aaaaaaa".matches(".{7}"));//true
//匹配.{本身
System.out.println("aaa{{{...".matches("a{3}\\{{3}.{3}"));//true
5,匹配字符出现了n次以上
//匹配N次以上
System.out.println("aaaaa".matches("a{3,}"));//true
6,匹配出现了m到n次之间{m,n}
//匹配3(含)到5(含)次之间
System.out.println("aaa".matches("a{3,5}"));//true
7,匹配0到N次
星号:*
//匹配0次至多次
System.out.println("".matches("a*"));//true
8,匹配1次到多次
字符+
//匹配1到多次
System.out.println("a".matches("a+"));//true
9,匹配出现了0次或者1次?
问号:?
//匹配0或1次
System.out.println("".matches("a?")); //true
System.out.println("a".matches("a?")); //true
System.out.println("aa".matches("a?")); //false
10,匹配数字\d 非数字\D
//匹配数字
System.out.println("a34567".matches("a\\d+"));
//匹配非数字
System.out.println("a34567".matches("\\D\\d+"));
11,匹配所有的空白字符,包括空格、制表符、回车符、换页符、换行符等\s
//匹配空白字符。包括空格、制表符、回车符、换页符、换行符等\s
System.out.println(("abc \n012").matches("\\D{3}\\s+\\d{3}")); //true
12,匹配所有非空白字符\s
//匹配所有的非空白字符\S
System.out.println(("abc \n012").matches("\\S+\\s+\\S+")); //true
13,匹配所有的单词字符,包括 有数字、26英文字母和下划线\w
//匹配任意数字字母下划线
System.out.println("123fdafadsHKJHK___".matches("\\w+"));//true
System.out.println("fdsafds...~~~".matches("\\w+.+~+"));//true
14,匹配所有的非单词字符\W
//匹配非单词字符
System.out.println("%%%&&**((^^%$##@@!!---+++=== \n\n".matches("\\W+"));//true
System.out.println("台湾人是中国人".matches("\\W+"));//true
15,匹配括号内任意一个字符[abcd] ;abcd为或者关系
//匹配[]内任意一个字符
System.out.println("a".matches("[abdc]"));//true
16, 范围匹配[a-z],[A-Z],[0-9]
//匹配范围单个字符
System.out.println("dfafjiewjhrlhjl4354356434ABC".matches("[a-z0-9A-Z]+")); //true
17,匹配不在范围单个字符[^a-z],[^0-9]
//匹配不在范围[^a-z],[^0-9]
System.out.println("A".matches("[^a-z]")); //true
18,匹配同时计算
//匹配同时计算
System.out.println("a".matches("[a-z&&[def]]")); //false
System.out.println("e".matches("[a-z&&[def]]")); //true
19,二选一运算| 或者
//或者关系
System.out.println("112312".matches("[a-z] |\\d+")); //true
20,边界匹配,以什么开头^,以什么结尾$
//边界匹配,以什么开头^,以什么结尾$
System.out.println("helloiuowjklkdshku49239784093280end".matches("^he[a-z0-9]+end$")); //true
java 数据类型String 【正则表达式】匹配的更多相关文章
- java 数据类型String 【正则表达式】匹配工具 Pattern和Matcher
Pattern和Matcher的介绍: Pattern对象是正则表达式编译后在内存中的表示形式,因此正则表达式宇符串必须先被编译为Pattern对象,然后再用该Pattern对象创建对应的Matche ...
- java中使用正则表达式匹配字符串
在Java中使用正则表达式去匹配相应的字符串: String importFileRole = "(import)\\s*[a-zA-Z0-9_<>.]+\\;";// ...
- Java算法练习——正则表达式匹配
题目链接 题目描述 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 '.' 和 '*' 的正则表达式匹配. '.' 匹配任意单个字符 '*' 匹配零个或多个前面的那一个元素 所谓匹配,是要 ...
- Java中输出正则表达式匹配到的内容
import java.util.regex.Matcher; import java.util.regex.Pattern; public class A { public static void ...
- java 中 正则 正则表达式 匹配 url
不多说 [http|https]+[://]+[0-9A-Za-z:/[-]_#[?][=][.][&]]* 这个就是匹配 网络上的网址 又称 url . 最起码 绝大部分的taobao ur ...
- java 从String中匹配数字,并提取数字
方法如下: private List<FieldList> GetTmpFieldsList(List<String> FieldsList,String tmptableNa ...
- 正则表达式匹配${key}并在Java中使用
1.正则表达式匹配${key} \$\{([a-z]+)\} 能够匹配字符串中以${key}形式的文本(其中key为小写应为字母) .*\$\{([a-z]+)\}.* 可以用来检测文本中是否有${k ...
- 详解Java API之正则表达式
正则表达式描述的是一种规则,符合这种限定规则的字符串我们认为它某种满足条件的,是我们所需的.在正则表达式中,主要有两种字符,一种描述的是普通的字符,另一种描述的是元字符.其中元字符是整个正则表达式的核 ...
- Java正则表达式匹配例子
Java正则表达式匹配例子 package com.ibm.test; import java.util.regex.Matcher; import java.util.regex.Pattern; ...
随机推荐
- Kubernetes:了解 Deployment
本文为作者的 Kubernetes 系列电子书的一部分,电子书已经开源,欢迎关注,电子书浏览地址: https://k8s.whuanle.cn[适合国内访问] https://ek8s.whuanl ...
- DVWA总结
Brute Force,即暴力(破解),是指黑客利用密码字典,使用穷举法猜解出用户口令,是现在最为广泛使用的攻击手法之一,如2014年轰动全国的12306"撞库"事件,实质就是暴力 ...
- 洛谷 P7879 -「SWTR-07」How to AK NOI?(后缀自动机+线段树维护矩乘)
洛谷题面传送门 orz 一发出题人(话说我 AC 这道题的时候,出题人好像就坐在我的右侧呢/cy/cy) 考虑一个很 naive 的 DP,\(dp_i\) 表示 \([l,i]\) 之间的字符串是否 ...
- LOJ #6044 -「雅礼集训 2017 Day8」共(矩阵树定理+手推行列式)
题面传送门 一道代码让你觉得它是道给初学者做的题,然鹅我竟没想到? 首先考虑做一步转化,我们考虑将整棵树按深度奇偶性转化为一张二分图,即将深度为奇数的点视作二分图的左部,深度为偶数的点视作二分图的右部 ...
- 洛谷 P4707 - 重返现世(扩展 Min-Max 容斥+背包)
题面传送门 首先看到这种求形如 \(E(\max(T))\) 的期望题,可以套路地想到 Min-Max 容斥 \(\max(S)=\sum\limits_{T\subseteq S}(-1)^{|T| ...
- 以VuePress的v1.x为基础开发-用户手册
首先配置.vuepress中的config.js module.exports = { title:"用户手册", description: '用户手册', evergreen: ...
- Ubuntu Linux安装QT5之旅
1. QT 版本选择 如何选择QT版本,参考如下介绍 https://www.cnblogs.com/chinasoft/p/15226293.html 2. 在此以5.15.0解说 下载QT 版本 ...
- Scala(二)【基本使用】
一.变量和数据类型 1.变量 语法:val / var 变量名:变量类型 = 值 val name:String = "zhangsan" 注意 1.val定义的变量想到于java ...
- 零基础学习java------day15--------collections用法,比较器,Set(TreeSet,TreeMap),异常
1. Collections用法 Collections: 集合的工具类public static <T> void sort(List<T> list) 排序,升序publi ...
- Linux磁盘分区(四)之分区大小调整
Linux磁盘分区(四)之分区大小调整在学习调整分区大小之前,先了解linx分区的概念.参考如下博客:[1]linux 分区 物理卷 逻辑卷 https://www.cnblogs.com/liuch ...