Java 正则表达式详细使用
Java 正则表达式的使用,具体内容如下所示:
java.util.regex.Pattern java.util.regex.Matcher
1.Match
match 是从字符串最头部开始匹配,一直到结束,需要匹配整个串
String content = "Welcome, bob!"; content.match("bob"); //false content.match(".*bob") //false content.match(".*bob.*") //true String str="test@yahoo.com.cn"; Pattern pattern = Pattern.compile("[\\w\\.\\-]+@([\\w\\-]+\\.)+[\\w\\-]+",Pattern.CASE_INSENSITIVE); Matcher matcher = pattern.matcher(str); boolean a = matcher.matches(); //匹配的时候返回true
2.Find
boolean b = matcher.find(); //包含正则匹配的串为true // 找到所有匹配的串 while(matcher.find()) { String extracted = matcher.group(0) }
3.Replace
matcher.replaceFirst("") matcher.replaceAll("");
4.Group
group(0) 代表整个表达式 String line = "#星座运势#20171013"; String pattern = "\\#(\\p{L}*)\\#(\\d+)"; //\p{L} 匹配 unicode any kind of letter from any language // 创建 Pattern 对象 Pattern r = Pattern.compile(pattern); // 现在创建 matcher 对象 Matcher m = r.matcher(line); if (m.find( )) { System.out.println("Found value: " + m.group(0) ); // "#星座运势#20171013" System.out.println("Found value: " + m.group(1) ); // 星座运势 System.out.println("Found value: " + m.group(2) ); // 20171013 } else { System.out.println("NO MATCH"); }
总结
以上所述是小编给大家介绍的Java 正则表达式详细使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
java使用正则表达式过滤html标签
前段时间开发的时候要读取一篇文章的简介内容(也就是前200个字符),使用了隐藏字段,可能有人就要问了,那后台也是可以截取字符的啊,那是因为编辑器里面包含了html标签,所以后台就需要处理html标签的正则表达式,前些天上网搜了下,发现有人写好的一个类,给大家共享下,不要闲小弟落伍了... import java.util.regex.Matcher; import java.util.regex.Pattern; /** * <p> * Title: HTML相关的正则表达式工具类 * <
-
Java使用正则表达式判断字符串是否以字符开始
Java 正则表达式判断字符串是否以字符开始: public static boolean startWithChar(String s) { if (s != null && s.length() > 0) { String start = s.trim().substring(0, 1); Pattern pattern = Pattern.compile("^[A-Za-z]+$"); return pattern.matcher(start).matche
-
Java使用正则表达式对注册页面进行验证功能实现
本文给大家介绍java使用正则表达式对注册页面进行验证的代码,代码如下所示: package regex; import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class registered { public static void main(String[] args) { //注册用户 Scanner sc=new Scanner(System.in
-
整理很详细的Java正则表达式使用大全
本文的全部内容都是针对Java正则表达式语法进行整理的,分享给大家: [正则表达式]文本框输入内容控制 整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:"^[0-9]*$". 只能输入n位的数字:"^\d{n}$". 只能输入至少n位的数字:"^\d{n,}$". 只能输入m~n位的数字:."^\d{m,n}$" 只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$&quo
-
Java使用正则表达式去除小数点后面多余的0功能示例
本文实例讲述了Java使用正则表达式去除小数点后面多余的0功能.分享给大家供大家参考,具体如下: package test; /** * 去掉多余的.与0 * @author Hust * @Time 2011-11-7 */ public class TestString { public static void main(String[] args) { Float f = 1f; System.out.println(f.toString());//1.0 System.out.print
-
Java使用正则表达式(regex)匹配中文实例代码
只能输入中文 /** * 22.验证汉字 * 表达式 ^[\u4e00-\u9fa5]{0,}$ * 描述 只能汉字 * 匹配的例子 清清月儿 */ @Test public void a1() { Scanner sc = new Scanner(System.in); String input = sc.nextLine(); String regex = "^[\\u4e00-\\u9fa5]*$"; Matcher m = Pattern.compile(regex).matc
-
在Java编程中使用正则表达式的基本方法
众所周知,在程序开发中,难免会遇到需要匹配.查找.替换.判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力.因此,学习及使用正则表达式,便成了解决这一矛盾的主要手段. 大 家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配. 自从jdk1
-
java使用正则表达式查找包含的字符串示例
本文实例讲述了java使用正则表达式查找包含的字符串.分享给大家供大家参考,具体如下: Hello.java: package hello; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Hello { public static void main(String[] args) { String re = "\\[([^\\]]+)\\]"; String str = &quo
-
Java中正则表达式的使用和详解(上)
1.匹配验证-验证Email是否正确 public static void main(String[] args) { // 要验证的字符串 String str = "service@xsoftlab.net"; // 邮箱验证规则 String regEx = "[a-zA-Z_]{1,}[0-9]{0,}@(([a-zA-z0-9]-*){1,}\\.){1,3}[a-zA-z\\-]{1,}"; // 编译正则表达式 Pattern pattern = Pa
-
Java 正则表达式详细使用
Java 正则表达式的使用,具体内容如下所示: java.util.regex.Pattern java.util.regex.Matcher 1.Match match 是从字符串最头部开始匹配,一直到结束,需要匹配整个串 String content = "Welcome, bob!"; content.match("bob"); //false content.match(".*bob") //false content.match(&qu
-
Java 正则表达式详细介绍
众所周知,在程序开发中,难免会遇到需要匹配.查找.替换.判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力.因此,学习及使用正则表达式,便成了解决这一矛盾的主要手段. 大 家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配. 自从jdk1.4推
-
JAVA 正则表达式陈广佳版本(超详细)
在Sun的Java JDK 1.40版本中,Java自带了支持正则表达式的包,本文就抛砖引玉地介绍了如何使用java.util.regex包. 可粗略估计一下,除了偶尔用Linux的外,其他Linu x用户都会遇到正则表达式.正则表达式是个极端强大工具,而且在字符串模式-匹配和字符串模式-替换方面富有弹性.在Unix世界里,正则表达式几乎没有什么限制,可肯定的是,它应用非常之广泛. 正则表达式的引擎已被许多普通的Unix工具所实现,包括grep,awk,vi和Emacs等.此外,许多使用比较广泛
-
java正则表达式匹配规则超详细总结
目录 1 单个字符的匹配规则如下: 2 多个字符的匹配规则如下: 3 复杂匹配规则主要有: 4 提取匹配的字符串子段 5 非贪婪匹配 6 替换和搜索 6.1 分割字符串 6.2 搜索字符串 6.3 替换字符串 6.4 反向引用 总结 1 单个字符的匹配规则如下: 2 多个字符的匹配规则如下: 3 复杂匹配规则主要有: 4 提取匹配的字符串子段 Pattern p = Pattern.compile("(\\d{3,4})\\-(\\d{7,8})"); Matcher m = p.ma
-
Java正则表达式提取字符的方法实例
正好遇到一个需求需要将字符串中特定的字符全部提取出来,这个如果是按常规的字符串处理的话非常的繁琐.于是想到用正则表达式来完成.项目需求是这样的:需要提取车牌号中最后一个数字,比如说:苏A7865提取5,苏A876X提取6 实现方法: import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test { public static void main(String[] args) { String s
-
正则表达式详细介绍(上)
本文是Jan Goyvaerts为RegexBuddy写的教程的译文,下面来看吧! 1. 什么是正则表达式 基本说来,正则表达式是一种用来描述一定数量文本的模式.Regex代表Regular Express.本文将用<<regex>>来表示一段具体的正则表达式. 一段文本就是最基本的模式,简单的匹配相同的文本. 2. 不同的正则表达式引擎 正则表达式引擎是一种可以处理正则表达式的软件.通常,引擎是更大的应用程序的一部分.在软件世界,不同的正则表达式并不互相兼容.本教程会集中讨论Pe
-
详解Java正则表达式中Pattern类和Matcher类
前言 本文将介绍Java正则表达式中的Pattern类与Matcher类.首先我们要清楚指定为字符串的正则表达式必须首先被编译为pattern类的实例.因此如何更好的了解这两个类,是编程人员必须知道的. 以下我们就分别来看看这两个类: 一.捕获组的概念 捕获组可以通过从左到右计算其开括号来编号,编号是从1 开始的.例如,在表达式 ((A)(B(C)))中,存在四个这样的组: 1 ((A)(B(C))) 2 (A) 3 (B(C)) 4 (C) 组零始终代表整个表达式. 以 (?) 开头的组是纯的
-
java正则表达式判断 ip 地址是否正确解析
这篇文章主要介绍了java正则表达式判断 ip 地址是否正确解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码如下 public class ClassWork05 { public static void main(String[] args) { System.out.println(IsIp.isIp("10.10.1.1")); } } class IsIp{ public static boolean isIp(Str
-
Java正则表达式Pattern和Matcher原理详解
这篇文章主要介绍了Java正则表达式Pattern和Matcher原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 基本使用 Scanner中的使用正则表达式 //Scanner 支持的分组 Scanner cin=new Scanner("red a bbc").useDelimiter("\\s*a\\s*"); System.out.println(cin.next()); System.out.pri
随机推荐
- 深入oracle分区索引的详解
- js防止页面被iframe调用的方法
- Android 校验email是否合法实现代码
- Java Socket编程(五) 简单的WEB服务器
- Oracle EXP和IMP用法和介绍
- javascript记录文本框内文字个数检测文字个数变化
- Android 添加系统设置属性的实现及步骤
- 分享一道笔试题[有n个直线最多可以把一个平面分成多少个部分]
- yii2.0整合阿里云oss上传单个文件的示例
- 选择指定数量后checkbox不可选(变灰)javascript代码
- JavaScript、C# URL编码、解码总结
- Apache 网站速度更快
- C#、ASP.NET通用工具类IsWhat?(可以判断数字、身份证、数据类型等等)
- Android 再按一次返回键退出程序实现思路
- 使用UITextField限制输入金额是正确小数
- 在Android打包中区分测试和正式环境浅析
- HTML页面弹出居中可拖拽的自定义窗口层
- C++利用opencv实现人脸检测
- mysql 5.7.21 winx64免安装版配置方法图文教程
- python Opencv将图片转为字符画