import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* 正则表达式,请参照Pattern等相关API
* @author
*
*/
public class PatternTest {
public static void main(String[] args) {
//matches1();
//matches2();
//matches3();
//matches4();
//matches5();
matches6();
}
//应用Pattern类来处理正则表达式
private static void matches6() {
String str = "wfs 897f sf sdf 78sdf sdf iopo tyr";
//找到3个字母的单词 \b为单词边界的匹配,可查阅Pattern 关于边界的说明。
String regex = "\\b\\w{3}\\b";
Pattern p = Pattern.compile(regex);
//获取匹配器
Matcher m = p.matcher(str);
//进行一次次匹配,如果匹配,则打印出结果 matches()是对整个字符串的匹配。
while(m.find()){
System.out.println(m.group());
//当前匹配开起始字母索引值
System.out.println(m.start());
//当前匹配开结束字母索引值
System.out.println(m.end());
}
}
//对字符串进行替换
private static void matches5() {
String str = "wanggzhing22234lkf2433lkkj";
//将其中的数字去除
String regex1 = "\\d+";
//将其中的叠词dd 222等替换为单个
String regex2="(.)\\1+";
System.out.println(str.replaceAll(regex1, ""));
//$用地取上一个正则表达式中的组
System.out.println(str.replaceAll(regex2, "$1"));
}
//对字符串进行分解 组的运用
private static void matches4() {
//以点来分解
//String str = "com.java.pattern";
//String regex ="\\.";
//对不规则的点来分解
//String str = "com..java.....pattern.test";
//String regex ="\\.+";
//分组的使用
String str = "ja33vafoi....usdfff4::45nnsassd";
// . 代表任意字符 (.)将其进行分组, \1表示第一组的内容
//以下表达式表示同样的内容出现过两次以上
String regex ="(.)\\1+";
String[] arr = str.split(regex);
for(String s:arr) {
System.out.println(s);
}
}
//Greedy 数量词 ,指定正则表达式出现次数的判断
private static void matches3() {
// ?代表0次或1次,+代表1次或多次,*代表0或多次
//{x} 刚好出现x次, {x,}至少出现x次,{x,y}出现x次以上但不超过y
String str = "234352";
//定义规则,数字可以出现一次或者多次。
//String regex = "\\d?";
String regex = "\\d{5,15}";
boolean result = str.matches(regex);
System.out.println(result);
}
//预定义类,顾名思义,预定义类就是将一些常用的正则给简化了。
private static void matches2() {
// . 表示任意符,
// \d 表示数字:[0-9]
// \D 非数字: [^0-9]
// \s 空白字符:[ \t\n\x0B\f\r]
// \S 非空白字符:[^\s]
// \w 单词字符:[a-zA-Z_0-9]
// \W 非单词字符:[^\w]
String str = "3_W";
String regex = "\\d\\w\\w";
//String regex = "\\d\\w+";
boolean result = str.matches(regex);
System.out.println(result);
}
//字符类
private static void matches1() {
String str = "aA";
// String str = "ab";
// 指定正则表达式 [] 代表一个字符,[abc]表示这个字符可以是abc中的任意一个。
//[A-Z]表示A-Z的任意一个字符。
String regex = "[abc][A-Z]";
boolean result = str.matches(regex);
System.out.println(result);
}
}
相关推荐
【SLAM论文笔记】SplaTAM论文小结
参考方法有ORB-SLAM3、Point-SLAM、NICE-SLAM、Kintinuous、ElasticFusion,测试数据集有ScanNet++、Replica、TUM-RGBD、Orig-ScanNet,SpaTAM并未在全部对比均为第一,表现最佳的是在ScanNet++、Replica,ScanNet++上SplaTAM方法位姿精度比第2名ORB-SLAM3高两个数量级,在TUM。上无稀疏SLAM结果,NICE-SLAM与Point-SLAM占优。SplaTAM基本做到了SOTA。
java中正则表达式的使用
1.1. 简介Regular Expression 正则表达式 常简称为: regex、正则正则表达式是一整套约束字符串的语法规则,独立于任何编程语言正则表达式 方便、灵活、功能强大,多部分编程语言都对正则表达式提供了支持我们通常把正则作为一个工具,进行字符串的 校验、获取、替换等操作 应用场景:校验用户输入的手机号是否符合要求提取网页中的邮箱地址将一段文本中所有的"李蛋"替换为"蛋蛋"等1...
从零构建物联网数据中台:MQTT协议、Node.js服务、MongoDB与InfluxDB双存储及React可视化实战
本文详细介绍了从零构建物联网数据中台的完整实战方案。通过采用MQTT协议作为设备通信标准,结合Node.js搭建高并发数据处理服务,并创新性地使用MongoDB与InfluxDB双存储架构分别管理设备元数据与海量时序数据,最后利用React构建了实时数据可视化控制台。该架构有效解决了物联网项目中数据异构、查询性能低下等核心痛点,为构建高效、可扩展的物联网平台提供了清晰路径。
Java中使用正则表达式
迅速上手:在其他语言中会使用正则表达式请参考如下代码示例。[代码] 如不会,以下是详细介绍 一、正则表达式及其语法 正则表达式是文本匹配的一种方法。 一些常用的语法如下:. - 匹配除换行符以外的所有字符。 \d,\w,\s - 匹配数字、字符、空格。 \D,\W,\S - 匹配非数字、非字符、非空格。 我iHIT - 匹配 我iHIT 整个字符串。...
基于轻量级神经网络MobileNet V2的水果识别种类算法研究
本文阐述了一种基于轻量级卷积神经网络MobileNet V2的水果分类与识别算法研究。为了最大限度地促进机械收获,需要一个检测系统,它可以让我们识别不同类别的水果。一个相对未开发的想法是使用深度学习和人工智能算法,不仅可以检测水果的种类,还可以检测水果是否成熟。这可以证明是有利可图的,因为它可以提供作物生长状况以及成熟和未成熟果实的个体数量,以及决定是否是收获时间的有用信息。第一步对数据进行了预处理,数据预处理技术在众多的深度学习计算中起到了重要作用。
SUMO使用教程(一)
本人的sumo视频入门课程,希望支持哦。https://edu.csdn.net/course/detail/25834 SUMO是一款交通仿真软件,其余可自行百度。教程一主要展示一下如何运行一个仿真实例。当然,这只是实现方法中的一种。 准备: 1.SUMO软件 2.osm地图文件 SUMO可去官网下载,解压后就可以使用,图形界面软是在解压后bin文件夹下的sumo-gui.exe。...
[转载]正则表达式概述及在JAVA中的使用
正则表达式概述及在JAVA中的使用概述你是否使用过查找*.tmp临时文件? 你是否使用过编辑工具中的查找/替换功能? 其实它们都使用了正则表达式正则表达式的作用提供更强大的字符串处理能力 测试字符串内的模式 例如,...
VS Code下载安装与使用教程
VSCode下载安装与使用教程
如何使用Java自带的正则表达式【转】
在Sun的Java JDK 1.40版本中,Java自带了支持正则表达式的包,本文就抛砖引玉地介绍了如何使用java.util.regex包。 可粗略估计一下,除了偶尔用Linux的外,其他Linu x用户都会遇到正则表达式。正则表达式是个极端强大工具,而且在字符串模式-匹配和字符串模式-替换方面富有弹性。在Unix世界里,正则表达式几乎没有什么限制,可肯定的是,它应用非常之广泛。正则表达式的引擎
【ARM Trace32(劳特巴赫) 使用介绍 1.3 - ARM 系统调试中常见的挑战】
每一个独立的gust os或者一个OS 内部里面美格独立的进程它使用虚拟地址是可能是重叠的,比如linux中每个用户进程它的运行地址(虚拟地址)都是0x0,这时如果想去同时调试所有进程,那么必须要有个办法把这些进程区分开来,trace32 就在虚拟地址前面加前缀的方法,这个前缀称为space id, 这个space id 实际上就是processor id或者是task id, 这样就可以把一个os内部的不同的进程区分开来。如果工具和内核中的连接是可以建立起来的,那么接下来就是调试工具使用的问题了。
导数与微分在 FPS 射击游戏中的实际应用:把“手感”算出来
摘要:射击游戏开发中,单线程适用于简单小游戏(如单机打靶),所有任务由主线程顺序处理,代码简单但效率较低;多线程则适合复杂场景(如多人在线3D大作),通过渲染、逻辑、网络、音效等线程分工协作,确保画面流畅、响应迅速和实时同步。选择依据取决于游戏复杂度、联网需求和性能要求,小型游戏用单线程,大型高要求项目必须采用多线程架构。(149字)
java中使用正则表达式
计算机专业毕业或者使用过Unix、Perl等产品的读者一定对正则表达式有一定的印象,即使没有接触过正则表达式也不要被它的外貌所吓倒。虽然做到精通正则表达式比较难,但是能够掌握它的基本应用却是非常容易的,一旦把正则表达式应用于实际问题的解决就可以非常明显的提高工作效率。 正则表达式最早是由数学家Stephen Kleene在对自然语言的递增研究成果的基础上提出来的,具有完整语法的正则表达式使用在字
基于STM32+华为云设计的智能鱼缸
本项目基于STM32单片机设计一款基于物联网的智能鱼缸系统,并通过应用侧接口开发上位机APP实现远程对鱼缸参数的检测和控制。该系统包括水温检测、水质检测、自动或手动换水、氛围灯灯光变换和自动或手动喂食等功能,可以帮助用户更好地管理鱼缸,提高鱼儿的生存率,同时增强用户对家庭装饰品的掌控感和科技感。
Java 正则表达式的使用方法
本文详细介绍了Java正则表达式的使用方法,包括语法规则、核心类和实战案例。主要内容涵盖:1.基础语法如字符匹配、转义、量词和边界处理;2.分组与零宽断言等高级特性;3.Pattern和Matcher类的核心方法;4.实用案例包括手机号验证、URL提取和HTML清洗;5.性能优化建议,如避免回溯和预编译复用。通过系统学习这些知识,可以有效处理字符串匹配、提取和格式化等常见需求,提升开发效率。
Camera2Demo
在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作
IMSL CNL 7.0.0 (x86-64)Crack
IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件
JAVA正则表达式使用总结
JAVA正则表达式使用总结 一、知识 1.*代表{0,} +代表{1,} ?代表{0,1} [0-9]+=[0-9]{1,} 表示匹配0~9中的任意数字,并且至少1位。 [0-9]*=[0-9]{0,} 表示匹配0~9中的任意数字,并且可以是0位(不存在)。 [0-9]?=[0-9]{0,1} 表示匹配0~9中的任意数字,并且只能是0位或1位。 如果至少需要2位数,最多8位数,
大中型超市收银系统(可直接运行)
光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开
Java程序中使用正则表达式
一、 简介 正则表达式是一种用来匹配字符串的强有力的武器。Java内置了强大的正则表达式的支持。 问题: 如何判断字符串是否是有效的电话号码? 如何判断字符串是否是有效的电子邮件地址? 如何判断字符串是否是有效的时间? … 解决: 方法一、通过程序判断,为每个用例创建判断规则,然后用代码实现。-----繁琐,重复 方法二、使用正则表达式,正则表达式可以用字符串来描述规则,并用来匹配字符串。 // 例如,判断手机号位数是否为11位,是否由数字组成。我们可以正则表达式<\d{11}> boolean
visio安装包
Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。
java 正则表达式使用_如何用正则表达式杀死Java
java 正则表达式使用 我们最近偶然发现了一个我们绝对不了解的现象:您可以使用简单的正则表达式杀死任何Java IDE以及任何Java进程… 回到大学后,我被告知正则表达式(称为正则语法或3型语法)总是以有限状态的自动机结束,因此可以在线性时间内进行处理(输入长度加倍,处理时间加倍)。 但是,这仅适用于“理智”的表达式。 正则表达式也可能导致不确定的有限状态自动机,事情可能变得很糟糕...
【java 正则表达式】记录所有在java中使用正则表达式的情况
本篇记录在java中邂逅正则表达式的所有美丽瞬间。因为在java和js中正则表达式的语法并不一致。 1.匹配字符串中有出现【2.1开头或者&2.1或者&3.1等的】Pattern m
如何在Java中使用正则表达式?
正则表达式是用于文本搜索的非常重要的工具。 以下是用于执行正则表达式搜索并基于正则表达式捕获字符串的不同部分的代码段 public class RegexTest { public static void main(String[] args) { String name = "01_My-File.pdf" ; match(name);...
【Java基础】Java正则表达式的使用
【Java基础】Java正则表达式的使用
java contains 正则表达式_JAVA程序中使用正则表达式
import java.util.regex.Matcher;import java.util.regex.Pattern;/*** @author Administrator 测试正则表达式**/public class TestRegex {/*** alt+shift+j** @param args*/public static void main(String[] args) {/*** ...
java正则表达式的用法_Java 正则表达式的使用
Java 正则表达式的使用1:正则表达式语法大全字符说明\将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如,"n"匹配字符"n"。"\n"匹配换行符。序列"\\"匹配"\","\("匹配"("。转义^在中括号里面和外面含义不同,如在外时,就表示开头,如^7[0-9]表示匹配开头是7的,且第二位是任一数字的字符串;如果在中括号里面,表示除了这个字符之外的任意字符(包括数字,特殊字符),如...
JAVA使用正则表达式
https://www.cnblogs.com/Mustr/p/6060242.html
一文教会你如何在Java中使用正则表达式
正则表达式一般用于字符串匹配, 字符串查找和字符串替换. 别小看它的作用, 在工作学习中灵活运用正则表达式处理字符串能够大幅度提高效率, 编程的快乐来得就是这么简单。一下...
Java正则表达式的使用
Java正则表达式的使用主要在于理解其意义就可以,这里有一个简单的例子,注释很详细。 1 package emailJuge; 2 3 import java.util.Scanner;//倒入包,用来扫描键盘输入 4 5 /** 6 * @author 沽-名-钓-誉 7 */ 8 public class EmailJudge { 9 ...
Java正则表达式的使用总结
准备对文件进行逐行读取。对读取的每一行应用正则表达式进行解析。每一行的组成一共有6种情形: 以Employee开头的行,解析的正则表达式为:Employee.* 以Roster开头的行,解析的正则表达式为:Roster.* 以Period开头的行,解析的正则表达式为: Period\{(?<g1>\d\d\d\d)\-(?<g2>\d\d)\-(?<g3>\d\d)\,(?<g4>\d\d\d\d)\-(?<g5>\d\d)\-(?&...
1009



被折叠的 条评论
为什么被折叠?



