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; ...
随机推荐
- 【SCOI2005】繁忙的都市
Description 城市C是一个非常繁忙的大都市,城市中的道路十分的拥挤,于是市长决定对其中的道路进行改造.城市C的道路是这样分布的:城市中有n个交叉路口,有些交叉路口之间有道路相连,两个交叉路口 ...
- 【贾志豪NOIP模拟题】慰问员工 cheer 【最小生成树】【对边权值的一些处理】
Description LongDD 变得非常懒, 他不想再继续维护供员工之间供通行的道路. 道路被用来连接 N(5 <= N <= 10,000)个房子, 房子被连续地编号为 1..N. ...
- [NOI2021] 量子通信
嗯. NOI2021最白给的一题. PS:很后悔没打同步赛,少了一张同步赛Ag 考虑加黑的256位01串,我们思考一下. 因为\(k\)小于16,所以我们直接分成16块.所以一定可以的绝对有一块是完全 ...
- [CF707 Div2, A ~ D]
(相信进这个博客的人,都已经看过题目了,不再赘述) 这把打小号打到了\(484\),\(rating + 636\) \(A\) 考虑进行模拟就行了,说白了这是一个英语阅读题 // code by D ...
- Atcoder Grand Contest 023 E - Inversions(线段树+扫描线)
洛谷题面传送门 & Atcoder 题面传送门 毒瘤 jxd 作业-- 首先我们不能直接对所有排列计算贡献对吧,这样复杂度肯定吃不消,因此我们考虑对每两个位置 \(x,y(x<y)\), ...
- Atcoder Grand Contest 021 F - Trinity(dp+NTT)
Atcoder 题面传送门 & 洛谷题面传送门 首先我们考虑设 \(dp_{i,j}\) 表示对于一个 \(i\times j\) 的网格,其每行都至少有一个黑格的合法的三元组 \((A,B, ...
- 【机器学习与R语言】13- 如何提高模型的性能?
目录 1.调整模型参数来提高性能 1.1 创建简单的调整模型 2.2 定制调整参数 2.使用元学习来提高性能 2.1 集成学习(元学习)概述 2.2 bagging 2.3 boosting 2.4 ...
- R语言与医学统计图形-【18】ggplot2几何对象汇总
ggplot2绘图系统--几何对象汇总 前面介绍了常见的几种基本的几何对象,并且介绍了scale.stat等其他要素.后续将介绍position.themes.coord和faceting等函数. 这 ...
- PPT——一个有情怀的免费PPT模板下载网站!“优品PPT”
http://www.ypppt.com/ PS:再推荐一款免费PPT下载网站 https://www.v5ppt.com/ppt-5-42-1.html
- GraphScope 集群部署
GraphScope 集群部署 1 k8s集群搭建 大致步骤如下: 安装docker.在ubuntu上,可以简单的通过命令sudo apt install docker.io来安装. 安装kubele ...