正则表达式学习笔记

正则表达式学习笔记

常用正则表达式

复制代码
1、匹配字母       Pattern pattern=Pattern.compile("[a-zA-Z]+");
2、匹配数字      Pattern pattern=Pattern.compile("[0-9]+");
3、匹配字母和数字 Pattern pattern=Pattern.compile("([0-9]+)|([a-zA-Z]+)");
4、匹配百度排行榜 Pattern pattern=Pattern.compile("<a target=\"_blank\" title=\"(\\S*)\"");
5、匹配IP地址:Pattern pattern=Pattern.compile("\\d+\\.\\d+\\.\\d+\\.\\d+");
6、匹配4位数字:Pattern pattern=Pattern.compile("\\d\\d\\d\\d");
7、匹配

需要转义的字符

复制代码
.*+()$/\?[]^{}

元字符

符号 含义 示例 说明 匹配输入
\[\] 可接收的字符列表 efgh e、f、g、h中的任意1个字符
\^ 不可接收的字符列表 \^abc 除a、b、c之外的任意1个字符,包括数字和特殊符号
- 连字符 A-Z 任意单个大写字母
. 匹配除\n以外的任何字符 a...b 以a开头,b结尾,中间包括2个任意字符的长度为4的字符串 aaab、aefb、a35b、a#*b
\d 匹配单个数字字符,相当于0-9 \\d{3}(\\d)? 包含3个或4个数字的字符串 123、9876
\D 匹配单个非数字字符串,相当于\^0-9 \\d(\\d)* 以单个非数字字符串开头,后接任意个数字字符串 a、A342
\w 匹配单个数字、大小写字母字符,相当于0-9a-zA-Z_ \\d{3}\\w{4} 以3个数字字符串开头的长度为7的数字字母字符串 234abcd、12345Pe
\W 匹配单个非数字、大小写字符,相当于\^0-9a-zA-Z_ \\W+\\d{2} 以至少1个非数字字母字符开头,2个数字字符结尾的字符串 #29、#?@10
(?i) 不区分大小写 (?i)abc、a(?i)bc、a((?i)b)c 1、abc都不区分大小写;2、bc不区分大小写;3、仅b不区分大小写
\\s 匹配任何空白字符(空格,制表符等)
\\S 匹配任何非空白字符(空格,制表符等)
竖杠 匹配竖杠之前或之后的表达式

限定符

Java调用代码

复制代码
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test {

	public static void main(String[] args) {
		String content=".......";
		Pattern pattern=Pattern.compile("\\d+\\.\\d+\\.\\d+\\.\\d+");
		//Pattern pattern=Pattern.compile(regStr,Pattern.CASE_INSENSITIVE);// 不区分大小写
		Matcher matcher = pattern.matcher(content);
		while(matcher.find()) {
			System.out.println("--> "+matcher.group(0));
		}
	}
相关推荐
云深处@1 小时前
【数据库】MySQL 入门
数据库·学习·mysql
果果燕1 小时前
实习笔记(一):NFS、Samba、VNC、Git、CMake、systemd、内核、交叉编译
linux·arm开发·c++·笔记·git
HyperAI超神经1 小时前
【vLLM 学习】Disaggregated Prefill
人工智能·深度学习·学习·vllm
天吾cc1 小时前
RTT-IO设备模型
单片机·嵌入式硬件·学习
美味蛋炒饭.2 小时前
Git 版本控制(下)
开发语言·git·学习·总结·后端开发
呼噜想睡觉2 小时前
Bootstrap 组件之响应式导航条实现
学习
菜鸟‍3 小时前
【论文学习】Medical Image Analysis 2024 || 医学图像分割中失败检测方法的比较基准研究:揭示置信度聚合的作用
人工智能·学习
Zguigo3 小时前
第25-26讲:计算机操作系统存储管理——分页机制、页表与快表(TLB)
linux·windows·笔记
爱音乐的marlon3 小时前
FastAPI 学习笔记03|core 核心层:config 是总控制台,database 是整个工程的地基
笔记·学习·fastapi
math_hongfan5 小时前
鸿蒙离线数据缓存高级架构:弱网预加载/离线数据优先级/同步冲突解决/上线后数据合并策略
学习·缓存·华为·架构·harmonyos·鸿蒙