java学习笔记(六) -- 正则表达式

Java 正则表达式 正则表达式中存在一些预定义字符,它们可以匹配特定的字符集合。\d:匹配任意数字字符,相当于字符类[0-9]。\D:匹配任意非数字字符,相当于字符类[^0-9]。\s:匹配任意空白字符,包括空格、制表符、换页符等,相当于字符类[f \r\t\v]。\S:匹配任意非空白字符,相当于字符类。w:匹配任意字母、数字或下划线字符,相当于字符类。\W:匹配任意非字母、数字或下划线的字符,相当于字符类。:通常用于匹配除换行符之外的任意单个字符。但在一些情况下,它可以配置为匹配包括换行符在内的任意字符。 阅读详情

正则表达式

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。

给定一个正则表达式和另一个字符串,我们可以达到如下的目的:
1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”);
2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。

正则表达式的特点是:
1. 灵活性、逻辑性和功能性非常的强;
2. 可以迅速地用极简单的方式达到字符串的复杂控制。
3. 对于刚接触的人来说,比较晦涩难懂。
由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。


以上百度百科

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegularTest {
	public static void main(String[] args) {
		
		String str = "AAA111BBB222CCC333";
		
		// 判断字符串是否全是数字
		if( Pattern.compile("[0-9]+").matcher(str).matches()) {
			System.out.println("true");
		} else {
			System.out.println("false");
		}
		
		// 字符串去数字
		String pattern = "\\d+";
		Pattern p = Pattern.compile(pattern);
		String paStr[] = p.split(str);
		
		for(int i = 0; i < paStr.length; i++) {
			System.out.print(paStr[i]);
		}
		System.out.println();
		
		// 字符串中的数字替换
		Matcher m = p.matcher(str);
		String maStr = m.replaceAll("---");
		System.out.println(maStr);
		
		// 判断时间格式
		String strDate = "2014-09-12";
		String paDate = "\\d{4}-\\d{2}-\\d{2}";
		Pattern daPattern = Pattern.compile(strDate);
		Matcher daMatch = daPattern.matcher(strDate);
		
		if(daMatch.matches()) {
			System.out.println("date is true");
		} else {
			System.out.println("date is false");
		}
		
		String str1 = "123aaa789";
		String str2 = "2014-08-06";
		String str3 = "aaa___bbb333ccc";
		String str4 = "\\d+";
		// String的替换
		System.out.println("replace :" + str1.replaceAll("\\D+","---"));
		// String的判断时间格式
		System.out.println("date is " + str2.matches("\\d{4}-\\d{2}-\\d{2}"));
		// String去除
		String s[] = str3.split(str4);
		
		for(int i = 0 ; i < s.length; i++) {
			
			System.out.print(s[i]);
		}
	}
}

输出结果

false
AAABBBCCC
AAA---BBB---CCC---
date is true
replace :123---789
date is true
aaa___bbbccc







华为IC岗笔试刷题含答案(2) 又做了几套题,记录了部分及答案,如有错误,欢迎评论指正。 阅读详情

相关推荐

从Demo到产品:基于ADAU1452的ANC方案,硬件选型、性能优化与避坑指南

本文详细解析了基于ADAU1452的主动降噪(ANC)方案从Demo到产品的实现路径,涵盖硬件选型、性能优化与实战避坑指南。重点探讨了ADAU1452与ADAU1466的性能差异、编解码器选型策略,以及MFXLMS算法优化技巧,为工程师提供从理论验证到量产落地的系统级解决方案。

weixin_30542079的博客 452

java正则表达式是什么6_Java学习笔记【六、正则表达式】

概述java.util.regex包,主要包含三个类:Pattern:正则表达式的编译表示,通过Pattern的工厂方法获得,用于创建一个表达式Pattern r = Pattern.compile("(\D)(\d+)(.)");Matcher:对输入的字符串进行解释和匹配的引擎,通过Pattern类获得,用于执行表达式和字符串之间的匹配操作Matcher m = r.matcher("This...

weixin_36019375的博客 109

Python异步协程爬虫优化:解决aiohttp中ServerDisconnectedError的高效策略

本文深入探讨了在Python异步协程爬虫中使用aiohttp时,如何高效解决常见的ServerDisconnectedError问题。核心策略包括全局复用ClientSession、精细配置TCPConnector连接池、实施请求重试与速率限制,从而构建稳定、高效的异步爬虫架构,有效避免服务器断开连接错误。

pz890123的博客 862

Code Mode 与可扩展软件:如何限制 AI 代码变更规模

AI 编程工具正从单纯代码生成走向可控工程执行,但整块功能由模型自主完成时,代码耦合与边界破坏成为可扩展软件的隐形难题。面对这样的现实,许多团队开始重新审视什么是真正可演进的系统:它并不取决于 AI 能一次生成多大规模,而在于每次变更能否被约束进可验证的局部。Code Mode 作为面向代码变更的受约束执行范式,通过明确作用域、引入执行反馈、面向验收产出,使改动保持小步可回滚。代码规模限制则充当反馈控制机制,强制模型在单次评估内兼容现有结构。将中型需求按领域边界切分为多个阶段,配合迁移脚本与兼容性测试,就能

weixin_30247781的博客 291

实战指南:在摩尔线程GPU上部署AI模型的完整流程

本文提供了一份详尽的实战指南,手把手教你如何在摩尔线程GPU上成功部署AI模型。内容涵盖从驱动安装、Docker环境配置,到核心的代码适配与模型运行全流程,并分享了性能调优技巧与常见避坑方法,旨在帮助开发者高效利用国产硬件进行AI应用开发。

weixin_29271263的博客 545

深入解析rknn-toolkit2混合量化:如何为RK3588和RK356X选择最佳量化策略

本文深入解析了RKNN-Toolkit2混合量化技术,针对瑞芯微RK3588和RK356X芯片的硬件特性差异,提供了最佳量化策略选择指南。通过混合量化技术,开发者可以在保持较高推理效率的同时显著降低精度损失,特别适用于边缘计算场景。文章详细介绍了混合量化的技术原理、实战流程及芯片专属优化策略,帮助开发者充分利用硬件特性提升模型性能。

dog123的博客 258

Java正则表达式

介绍并简单使用Java正则表达式

m0_62946761的博客 7255

【nvidia-B200】实际生产报错NVRM: nvAssertFailedNoLog: Assertion failed: pIOVAS != NULL @ io_vaspace.c:601

升级 NVIDIA 驱动到 R545/R550 数据中心版本(解决 IOVA bug,这是性能差的根本原因);重启服务器(清理驱动残留资源,消除日志中的 NVRM 错误);验证 NVLink/PCIe 链路(确保 8 卡互联使用高速链路,而非单卡 PCIe 共享带宽)。完成这 3 步后,ncccl-test的all_reduce带宽应能提升至100GB/s 以上(取决于服务器的 NVLink/NVSwitch 配置),恢复正常性能。

jundao1997的专栏 652

Java——正则表达式详解

Java对正则表达式的支持是从1.4版本开始的,此前的JRE版本不支持正则表达式。Java语言中的正则表达式匹配功能主要是通过和类实现的。find():在一个字符串里寻找一个给定模式的匹配:用一个给定的模式尝试匹配一个字符串的开头matches():用一个给定的模式去尝试匹配一个完整的字符串:进行替换操作,对所有的匹配都进行替换:进行替换操作,只对第一个匹配进行替换compile():把一个正则表达式编译成一个模式flags():返回某给定模式的匹配标志matches()

吴声子夜歌的博客 2万+

31、Labview如何搭建程序框架?--状态机到数据采集等常用框架

本文废话不多,直接列举几种框架搭建方式,为了尽量向大家提供干货,本文直接从简介和手把手教搭建框架两方面来讲解,本文提到五种经典框架模式,学会这五种就很够了,分别是:状态机框架(State Machine)、生产者-消费者框架(Producer-Consumer)、主-从框架(Master-Slave)、事件驱动框架(Event-Driven)、分层架构(Layered Architecturep)。这个框架是基于状态机结构的。顾名思义“状态机”就是个“切换程序状态的机器”。本质是一个。

关注我,更多技术问题欢迎私聊~ 3103

手把手教你学基带SOC芯片(4.4.9)--基带芯片的电源管理实例:高通 Snapdragon 系列实例(十)

Snapdragon 888 通过支持多种深度睡眠模式,如 AOAC 模式、低功耗模式和深度睡眠模式,以及智能电源管理技术,实现了对功耗的精细管理。这些模式不仅延长了设备的电池寿命,还确保了用户在各种使用场景下的良好体验。无论是保持网络连接、限制后台活动,还是完全关闭不必要的功能,Snapdragon 888 都能够灵活应对,提供高效的功耗管理方案。

MHD0815的博客 740

【Java 基础篇】Java 正则表达式

本篇博客介绍了 Java 正则表达式的基本概念、语法和常用操作。我们学习了如何创建正则表达式模式对象、匹配器对象,以及如何使用它们进行字符串的匹配、提取和替换操作。正则表达式在 Java 程序中具有广泛的应用,可以帮助我们处理文本数据,提取关键信息,进行格式验证等。通过灵活运用正则表达式,我们可以更高效地处理字符串操作。希望本篇博客对你理解和使用 Java 正则表达式有所帮助。祝你在 Java 编程中取得更多的成功!

繁依Fanyi的博客 1万+

PCL点云八叉树体素中心下采样,体素包含点索引提取

基于PCL octree实现点云八叉树计算,支持提取体素中心点进行点云下采样;根据任一点坐标,可以得到其在八叉树中的位置,输出对应体素内其余点的坐标或者索引

qq_48694523的博客 463

正则表达式学习笔记

正则表达式学习笔记。

1853 1407

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

【Java学习笔记】73 - 正则表达式

1.一个正则表达式,就是用某种模式去匹配字符串的一个公式。很多人因为它们看上去比较古怪而且复杂所以不敢去使用,不过,经过练习后,就觉得这些复杂的表达式写起来还是相当简单的,而且,一旦你弄懂它们,你就能把数小时辛苦而且易错的文本处理工作缩短在几分钟(甚至几秒钟)内完成2.老韩这里要特别强调,正则表达式不是只有java才有,实际上很多编程语言都支持正则表达式进行字符串操作!如图所示。String content = "1998年12月8日,第二代Java平台的企业版J2EE发布。

qq_41891655的博客 1632

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Java 正则表达式学习笔记

正则表达式是一种用于描述、匹配和处理文本模式的强大工具。在 Java 中,正则表达式主要通过`java.util.regex`包来实现。可用于验证输入、提取特定信息、替换文本等频繁使用字符串的场景。通过`Pattern`对象的`matcher`方法创建。将正则表达式字符串编译为`Pattern`对象。3. `matches()`:判断整个输入字符串是否与正则表达式完全匹配。1. `find()`:查找输入字符串与正则表达式匹配的下一个子字符串。2. `group()`:返回上一次匹配成功的子字符串。

weixin_74921249的博客 506

Java学习笔记(四)——正则表达式

Java正则表达式

m0_62122789的博客 1341

Java学习笔记:正则表达式

Java学习笔记:正则表达式正则表达式之定义与用途正则表达式之实例分析 最近在学习Java,学到正则表达式这一块儿感觉这个内容挺有意思,似乎与模式识别有着微妙的联系,所以想写一个学习笔记,记录一下自己学习的过程。以下内容仅仅是作为学习笔记,如有不当之处,敬请谅解与指正。 正则表达式之定义与用途 首先,一起探讨一下正则表达式的定义。其实,它就是对字符串的模式进行了一个定义,通过该正则表达式,可以匹配到对应的一种或多种字符串。举一个最简单的例子:Hello World,这是一个字符串,这同时也是一个最简单的正则

周三不Coding的博客 384

Java正则表达式基础详解

Java正则表达式使用详解

随梦而飞的博客 1880

11Java正则表达式学习笔记

Java正则表达式学习笔记 文章目录1 Java正则表达式简介1.1 快速入门1.2 基本介绍2 三个常用类2.1 Pattern2.1.1 Pattern.compile(regStr)2.1.2 Pattern.matches(regStr, content)2.2 Matcher2.2.1 matcher.find()2.2.2 matcher.matches()2.2.3 matcher.replaceAll("")2.3 PatternSyntaxExcepiton3 基...

tangguanlin2008的博客 487

【Java从入门到精通】Java 正则表达式

正则表达式定义了字符串的模式。正则表达式可以用来搜索、编辑或处理文本。正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。Java 提供了 java.util.regex 包,它包含了 Pattern 和 Matcher 类,用于处理正则表达式的匹配操作。

RL2698853114的博客 1310

java生日正则表达式_Java正则表达式详解

如果你曾经用过Perl或任何其他内建正则表达式支持的语言,你一定知道用正则表达式处理文本和匹配模式是多么简单。如果你不熟悉这个术语,那么“正则表达式”(RegularExpression)就是一个字符构成的串,它定义了一个用来搜索匹配字符串的模式。许多语言,包括Perl、PHP、Python、JavaScript和JScript,都支持用正则表达式处理文本,一些文本编辑器用正则表达式实现高级“搜...

weixin_39928993的博客 1540

Java正则表达式学习笔记(二)

一:正则表达式应用实例 1.1 验证汉字: public static void main(String[] args) { //1.验证汉字 String content="周嘉兴aa教育"; String regExp="^[\u0391-\uffe5]+$"; Pattern pattern=Pattern.compile(regExp); Matcher matcher=pattern.matcher(con

JiaXingNashishua的博客 2346

正则表达式学习笔记,2024年最新java面试问题最新

面试题文档来啦,内容很多,485页!由于笔记的内容太多,没办法全部展示出来,下面只截取部分内容展示。

2401_84433658的博客 645
上一篇: java学习笔记(五) -- 字符串
下一篇: java学习笔记(七) -- 初涉对象
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值