java中正则表达式的应用

简介: java.util.regex   Pattern的应用   1 public static void main(String[] args) { 2 //简单的正则匹配。

java.util.regex   Pattern的应用

 

 1 public static void main(String[] args) {
 2         //简单的正则匹配。从给定的字符串中匹配正则表达式
 3         //匹配到返回true  匹配不到返回false
 4         String regex_0 = "(\\;|\\?|\\'|\"|%)";
 5         String s="sx?fdfs'sd";
 6         Pattern pattern = Pattern.compile(regex_0);
 7         Matcher matcher = pattern.matcher(s);
 8         boolean as=matcher.find();//返回true 匹配到?
 9         boolean dd=matcher.find();//返回true 匹配到'
10         boolean ss=matcher.find();//返回false 没有匹配到特殊符号
11         
12         
13         String regex_1=pattern.pattern();//返回当前匹配器的正则表达式  (\;|\?|\'|"|%)
14         String string=pattern.toString();//返回 (\;|\?|\'|"|%)
15         
16         String regex_s="\\d+";
17         boolean falg=Pattern.matches(regex_s,"897");//返回 true
18         
19         
20         String regex_2="(\\,)";
21         String on="sxf,sxd,dong,leng";
22         Pattern pattern2=Pattern.compile(regex_2);
23         String[] ad=pattern2.split(on);//[sxf, sxd, dong, leng]
24         
25         String regex_3="([0-9]+)|(\\,)";
26         String on2="sxf8sxs94sxy0df,hsl879dzq,xjt  45   ";
27         Pattern pattern3=Pattern.compile(regex_3);
28         String[] y=pattern3.split(on2);//[sxf, sxs, sxy, df, hsl, dzq, xjt  ,    ]
29         String[] x=pattern3.split(on2,3);//[sxf, sxs, sxy0df,hsl879dzq,xjt  45   ](当3>0 匹配3-1次,数组长度不大于3,数组最后一个是除匹配到的剩余的串)
30         String[] z=pattern3.split(on2,9);//[sxf, sxs, sxy, df, hsl, dzq, xjt  ,    ]
31         String[] h=pattern3.split(on2,-1);//[sxf, sxs, sxy, df, hsl, dzq, xjt  ,    ](当第二个参数<0,匹配次数不受限制,数组长度为任意长度)
32         String[] m=pattern3.split(on2,0);//[sxf, sxs, sxy, df, hsl, dzq, xjt  ,    ]
33     }
View Code

 

相关文章
|
14天前
|
监控 Java Python
Java 中的正则表达式
正则表达式是Java中强大的文本处理工具,支持灵活的匹配、搜索、替换和验证功能。本文介绍了正则表达式的语法基础及其在Java中的应用,包括字符串匹配、替换、分割及实际场景中的邮箱验证和电话号码提取等示例。通过这些技术,可以显著提高文本处理的效率和准确性。
61 8
|
18天前
|
缓存 Java 开发者
Java多线程并发编程:同步机制与实践应用
本文深入探讨Java多线程中的同步机制,分析了多线程并发带来的数据不一致等问题,详细介绍了`synchronized`关键字、`ReentrantLock`显式锁及`ReentrantReadWriteLock`读写锁的应用,结合代码示例展示了如何有效解决竞态条件,提升程序性能与稳定性。
62 6
|
16天前
|
监控 Java 数据库连接
Java线程管理:守护线程与用户线程的区分与应用
在Java多线程编程中,线程可以分为守护线程(Daemon Thread)和用户线程(User Thread)。这两种线程在行为和用途上有着明显的区别,了解它们的差异对于编写高效、稳定的并发程序至关重要。
26 2
|
17天前
|
Java API 开发者
Java中的Lambda表达式与Stream API的协同作用
在本文中,我们将探讨Java 8引入的Lambda表达式和Stream API如何改变我们处理集合和数组的方式。Lambda表达式提供了一种简洁的方法来表达代码块,而Stream API则允许我们对数据流进行高级操作,如过滤、映射和归约。通过结合使用这两种技术,我们可以以声明式的方式编写更简洁、更易于理解和维护的代码。本文将介绍Lambda表达式和Stream API的基本概念,并通过示例展示它们在实际项目中的应用。
|
19天前
|
Java API 开发者
Java中的Lambda表达式:简洁代码的利器####
本文探讨了Java中Lambda表达式的概念、用途及其在简化代码和提高开发效率方面的显著作用。通过具体实例,展示了Lambda表达式如何在Java 8及更高版本中替代传统的匿名内部类,使代码更加简洁易读。文章还简要介绍了Lambda表达式的语法和常见用法,帮助开发者更好地理解和应用这一强大的工具。 ####
|
21天前
|
并行计算 Java 编译器
深入理解Java中的Lambda表达式
在Java 8中引入的Lambda表达式,不仅简化了代码编写,还提升了代码可读性。本文将带你探索Lambda表达式背后的逻辑与原理,通过实例展示如何高效利用这一特性优化你的程序。
|
23天前
|
关系型数据库 MySQL Java
MySQL索引优化与Java应用实践
【11月更文挑战第25天】在大数据量和高并发的业务场景下,MySQL数据库的索引优化是提升查询性能的关键。本文将深入探讨MySQL索引的多种类型、优化策略及其在Java应用中的实践,通过历史背景、业务场景、底层原理的介绍,并结合Java示例代码,帮助Java架构师更好地理解并应用这些技术。
24 2
|
16天前
|
安全 Java API
Java中的Lambda表达式:简化代码的现代魔法
在Java 8的发布中,Lambda表达式的引入无疑是一场编程范式的革命。它不仅让代码变得更加简洁,还使得函数式编程在Java中成为可能。本文将深入探讨Lambda表达式如何改变我们编写和维护Java代码的方式,以及它是如何提升我们编码效率的。
|
19天前
|
安全 Java API
Java中的Lambda表达式与Stream API的高效结合####
探索Java编程中Lambda表达式与Stream API如何携手并进,提升数据处理效率,实现代码简洁性与功能性的双重飞跃。 ####
24 0
|
机器学习/深度学习 移动开发 Java
Java正则表达式学习
在日常的开发中经常需要使用到正则表达式,它是涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在比如验证一个邮件是否是合法的邮件地址,验证身份证是否合法等等都可以使用正则表达式。
229 0
Java正则表达式学习