Java 正则表达式 简单用法
正则表达式的具体写法网上有很多了,这里只记录在 Java 中怎么使用。
java.util.regex.Matcher、java.util.regex.Pattern
主要有:
String.matches方法。只判断是否匹配可以用这个;Matcher.matches方法。全局匹配,并配合 Matcher.group 提取出某规则局部(正则表达式内用括号(...)(...)...分组,组下标 1,2,3...);Matcher.find方法。局部匹配,并用 Matcher.group 提取出该局部。
一段示例代码:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public static void main(String[] args) {
String str = " +214asv";
String regex1 = "([ ]*)([+-]?\\d+)(\\D*.*)";
// 1.
System.out.println(str.matches(regex1));
// 2.
Pattern pattern1 = Pattern.compile(regex1);
Matcher matcher1 = pattern1.matcher(str);
if (matcher1.matches())
System.out.println(matcher1.group(2));
// 3.
String regex2 = "[+-]?\\d+";
Pattern pattern2 = Pattern.compile(regex2);
Matcher matcher2 = pattern2.matcher(str);
if (matcher2.find()){
System.out.println(matcher2.group());
}
}
Java 正则表达式 简单用法的更多相关文章
- UltraEdit中使用正则表达式-简单用法
UltraEdit中使用正则表达式 1.认识正则表达式语法: 正则表达式 (UltraEdit Syntax): % 匹配行首 - 表明要搜索的字符串一定在行首. $ 匹配行尾 - 表明要搜索的字符串 ...
- java正则表达式 --简单认识
学习目标 正则表达式的作用正则表达式的模式匹配Pattern类和Matcher类的使用掌握String对正则的支持具体内容一.认识正则(为什么要有正则) 方便的对数据进行匹配 执行复杂的字符串验证.拆 ...
- Java正则表达式的用法
/** * 校验时间格式,正确则返回true * @param xxx * @return */ private static boolean checkDateFormat (String xxx) ...
- java内部类简单用法
package innerClass; /** * 特点 * 1:增强封装性,通过把内部类隐藏在外部类的里面,使得其他类不能访问外部类. * 2:增强可维护性. * 3:内部类可以访问外部的成员. * ...
- Java 实现简单的 Socket 通信
Java socket 封装了传输层的实现细节,开发人员可以基于 socket 实现应用层.本文介绍了 Java socket 简单用法. 1. 传输层协议 传输层包含了两种协议,分别是 TCP (T ...
- java中正则表达式基本用法
正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为 ...
- JAVA使用Logback发送日志到控制台、文件、ELK的最简单用法
一.简述 本文讲JAVA使用Logback发送日志到控制台.文件.ELK的最简单用法. 二.教程 1.新建pom.xml项目引入下列依赖: <dependencies> <!--Be ...
- Java正则表达式初学者使用法简介
在Java中使用正则表达式的方法非常多,最简单的就是和字符串一起使用.对于Java正则表达式初学者,在String中有四个方法可以使用正则表达式,本文正是介绍这四个方法来使用正则表达式来处理文本数据. ...
- java中正则表达式基本用法(转)
https://www.cnblogs.com/xhj123/p/6032683.html 正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符( ...
随机推荐
- 【题解】 hdu2955 Robberies
有抱负的罗伊·劫匪已经看过很多美国电影,他知道坏人通常会被抓住,经常是因为他们太贪心了.他决定在银行抢劫案中工作一段时间,然后退休后到一所大学从事一份舒适的工作. 题目: 罗伊去几个银行偷盗,他既想多 ...
- C++知识点大汇总
概述 1.1980年 贝尔实验室 Bjanre Stroustrup(比雅尼·斯特劳斯特鲁普)对C改进与扩充 最初称为"带类的C",(c with classes). 1983年正 ...
- Linux驱动中的EPROBE_DEFER是个啥
Linux kernel 驱动中,有不少驱动会引用到 EPROBE_DEFER 这个错误号.比如下面这个例子,对 devm_gpiod_get 的返回值进行判断,如果有错误且错误号不是 -EPRBO ...
- Go语言十进制转二进制字符串
Go语言十进制转二进制字符串 代码Demo func Test_2(t *testing.T) { // 方法一 fmt.Println(DecToBin(5)) // 方法二:导入包"gi ...
- js更改HTML样式
<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content=&q ...
- 关于基于Nexus3和Docker搭建私有Nuget服务的探索
背景简介 NuGet是Microsoft开发平台的程序集包管理器,它由客户端工具和服务端站点组成,客户端工具提供给用户管理和安装/卸载软件程序包,以及打包和发布程序包到NuGet服务端站点等功能,服务 ...
- hdu 6050 Funny Function 矩阵快速幂
就算告诉我是矩阵快速幂我也推不出递推式呀!!! 官方题解: 对于任意i>=1,当j>=3时,有通过归纳法可以得到 进而推导出 后来自己重新推导了一遍 #include <iostre ...
- JPA事务中的异常最后不也抛出了,为什么没被catch到而导致回滚?
上周,我们通过这篇文章<为什么catch了异常,但事务还是回滚了?>来解释了,之前test4为什么会回滚的原因. 但还是收到了很多没有理解的反馈,主要是根据前文给出的线索去跟踪,是获得到了 ...
- 其他:Spring5.0框架源码导入IDEA
1.下载Spring spring-framework-5.0.4.RELEASE下载地址:https://github.com/spring-projects/spring-framework/re ...
- mybatis框架的第二天
一.mybatis的基础crud的操作 先在接口中,写对应的方法名称,返回类型,访问符. 之后在映射配置文件中,写具体的实现 二.mybati中crud的细节 1.模糊查询 这是接口中 这是xml中 ...