import java.util.regex.Matcher;
import java.util.regex.Pattern; public class TestMatcher {
public static void main(String[] args) {
//正则表达式对字符串的常见操作:字符串的匹配、切割、替换、获取。 //字符串的匹配:matches()
/*常用写法*/
// 1. boolean b = Pattern.matches("正则表达式", "匹配内容");
String str = "13111225544";
String regexp = "\\d{11}$";
boolean b = Pattern.matches(regexp, str);
System.out.println("正则匹配结果="+b); /*标准写法*/
// 2.Pattern p = Pattern.compile("正则表达式"); Matcher m = p.matcher("匹配内容");
// boolean b = m.matches(); Pattern p = Pattern.compile(regexp);
Matcher m = p.matcher(str);
boolean b2 = m.matches();
System.out.println("正则匹配结果="+b2); /*语句匹配写法*/
// 3.if("aaab".matches(/^a*b$/)) {};
System.out.println("正则匹配结果="+(str.matches(regexp))); // 字符串切割:split()
//DEMO
// String str = "需要切割的字符串";
//描述切割规则
// String regex = "正则表达式";
//切割后的字符串仍是字符串:
// String sstr1 = str.split(regex);
//切割后的字符串放在数组中:
// String[] sstr2 = str.split(regex); String s = "哈哈##呵呵###哦哦#";
String regex = "#+";
String[] sstr1 = s.split(regex);
for(String string:sstr1){
System.out.print(string);
} // 字符串替换:replaceAll()
//DEMO
// String str = "需要替换的字符串";
//匹配规则
// String regex = "正则表达式";
// String Str = str.replaceAll(regex, "替换内容"); String str2 = "哈喽##你好###大聪明";
//匹配规则
String regex2 = "(.)\\1+"; //拓展:叠词切割 String regex = "(.)\\1+",这里用到了组的概念。
//替换为:
String newStr = str2.replaceAll(regex2, "、");
//替换后结果:
System.out.println(newStr); // 字符串获取:group()
//DEMO
//获取字符串“Hi ! welcome to my blog haha”中为两个字母的单词.
String s3 = "Hi ! welcome to my blog haha";
//1、匹配子串
String regex3 = "\\b[a-zA-Z]{2}\\b";
//2、获取匹配器
Pattern p3 = Pattern.compile(regex3);
Matcher m3 = p3.matcher(s3);
//3、使用匹配器的group()方法来获取:(find方法是判断是否具有匹配子串)、
System.out.println("”"+s+"“中的两个字母的单词有:");
while(m3.find()){
System.out.println(m3.group());
} } }

Java正则表达式语法及简单示例的更多相关文章

  1. JAVA正则表达式语法大全

    [正则表达式]文本框输入内容控制 整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:"^[0-9]*$". 只能输入n位的数字:"^\d{n ...

  2. (转)JAVA正则表达式语法大全

    [正则表达式]文本框输入内容控制 整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:"^[0-9]*$". 只能输入n位的数字:"^\d{n ...

  3. java 正则表达式语法

    java 正则表达式语法 标签: 正则表达式javawindowsvbscriptscripting电话 2012-05-20 10:11 6705人阅读 评论(1) 收藏 举报  分类: javaS ...

  4. 【转】详解Java正则表达式语法

    (转自: http://www.jb51.net/article/76354.htm) 这篇文章主要介绍了Java正则表达式语法,包括常用正则表达式.匹配验证-验证Email是否正确以及字符串中查询字 ...

  5. java正则表达式语法详解及其使用代码实例

    原文地址 译者序(下载代码) 正则表达式善于处理文本,对匹配.搜索和替换等操作都有意想不到的作用.正因如此,正则表达式现在是作为程序员七种基本技能之一*,因此学习和使用它在工作中都能达到很高的效率. ...

  6. Java正则表达式语法

    Java正则表达式 表达式意义: 1.字符 x    字符 x.例如a表示字符a \\    反斜线字符.在书写时要写为\\\\.(注意:因为java在第一次解析时,把\\\\解析成正则表达式\\,在 ...

  7. Java调度框架Quartz简单示例

    Quartz的大名如雷贯耳,这里就不赘述,而且本文也不作为深入探讨,只是看完Quartz的官方文档后,下个简单示例,至少证明曾经花了点时间学习过,以备不时之需. Quartz使用了SLF4J,所以至少 ...

  8. Java使用ObjectMapper的简单示例

    一.什么是ObjectMapper? ObjectMapper类是Jackson库的主要类,它提供一些功能将数据集或对象转换的实现. 它将使用JsonParser和JsonGenerator实例来实现 ...

  9. Java nio Client端简单示例

    java nio是一种基于Channel.Selector.Buffer的技术,它是一种非阻塞的IO实现方式 以下Client端示例 public class ClientNio { public s ...

  10. JAVA入门[6]-Mybatis简单示例

    初次使用Mybatis,先手写一个hello world级别的例子,即根据id查询商品分类详情. 一.建表 create table Category ( Id INT not null, Name ...

随机推荐

  1. PolarDB for PostgreSQL 内核解读 :HTAP架构介绍

    简介:在 PolarDB 存储计算分离的架构基础上我们研发了基于共享存储的MPP架构步具备了 HTAP 的能力,对一套 TP的数据支持两套执行引擎:单机执行引擎用于处理高并发的 OLTP:MPP跨机分 ...

  2. 创新推出 | Serverless 场景排查问题利器:函数实例命令行操作

    ​简介: 实例命令行功能的推出希望能消除用户使用 Serverless 的"最后一公里",直接将真实的函数运行环境展现给用户,此后 Serverless 将不再是一个"黑 ...

  3. What's new in dubbo-go v1.5.6

    简介: dubbogo 社区近期发布了 dubbogo v1.5.6.该版本和 dubbo 2.7.8 对齐,提供了命令行工具,并提供了多种加载配置的方式. 作者 | 铁城  dubbo-go 社区 ...

  4. Spring Boot Serverless 实战 | Serverless 应用的监控与调试

    ​简介:Spring Boot 是基于 Java Spring 框架的套件,它预装了 Spring 的一系列组件,让开发者只需要很少的配置就可以创建独立运行的应用程序.在云原生的环境中,有大量的平台可 ...

  5. 图像检索在高德地图POI数据生产中的应用

    ​简介: 高德通过自有海量的图像源,来保证现实世界的每一个新增的POI及时制作成数据.在较短时间间隔内(小于月度),同一个地方的POI 的变化量是很低的. ​ 作者 | 灵笼.怀迩 来源 | 阿里技术 ...

  6. [FAQ] 在 Mac 系统上 yarn add canvas 安装失败的原因

      当使用 yarn add 安装某个 node 库时,如果出现失败,多半是由于 nodejs 版本问题引起的. 现在我们可以使用 nvm 方便的管理不同的 nodejs 进行随时切换. $ nvm ...

  7. WPF 对接 Vortice 绘制 WIC 图片

    本文告诉大家如何通过 Vortice 在 Direct2D 里面绘制图片,图片的来源是 WIC 加载出的图片 在上一篇博客 WPF 对接 Vortice 调用 WIC 加载图片 告诉了大家如何对接 V ...

  8. Centos7 忘记密码的解决方法

    ilo远程修改 重启服务器,点击cold boot 按钮. 开机后,进入内核上按"e",进入编辑模式 在linux删除linux16这一行的地方,写入如下语句,在*.img行之前. ...

  9. 【Oracle】Oracle数据库多实例安装

    需求:因为需要从RAC的多实例迁移至单虚拟机的多实例.因此,简要概述一下,如何安装数据库的多实例. 不管是Oracle 11g还是10g的多实例,其基本思路都是一致的. 1.调用dbca 在root账 ...

  10. python教程6.6-发送邮件smtplib

    实现步骤: Python对SMTP⽀持有 smtplib 和 email 两个模块, email 负责构造邮件, smtplib 负责发送邮件,它对smtp协议进⾏了简单的封装. 简单代码示例: 发送 ...