9.JAVA中的正则表达式
一、JAVA中的正则表达式
- 1.概念:以某种特定的方式描述字符串
- 1.Java中正则表达式的规则
- ? #{0,1}-?有一个-或者没有
- \\ #表示一个”\"
- \\d #表示一个数字
- \\D #非数字
- f\\W+ #表示f开头的单词
- \\W #表示一个非单词字符
- \\w #表示一个单词字符[0-9A-Za-z-]包含’-’
- \\s #空白符号
- \\S #非空白符号
- (-|\\+)?\\d+ #表示一个数字(正数负数都可以)
- {m,n}数量
- * #{0,}
- + #{1,}
- . #任意的字符 除了“\n”
- 正则表达式中的一个\————\\
- 一个+---\\+
- 一个.————\\.
- System.out.println("193.12.1.0".matches("(\\d{1,3}\\.){3}\\d{1,3}"));——true
- 2.String提供的正则表达式运算
- 运算一:split(String arg);—return String[];
- split(” “,int max);//限制分离的次数最多时max次
- 按照arg进行split,给定的字符会被删除
- 运算二: 替换单词(一个||多)
- replaceFirst(“f\\w+”,“location”);//替换第一个出现的f开头的单词
- replaceAll(“f\\w+”|”g\\w+”|”z\\w+”,”location");//替换全部的单词—String.replace(String)一样,后者不支持正则表达式
- eg:
- String string=new String(“Hello String ass");
- string.replaceFirst(“H\\w+|S\\w+”,”abc”);//abc String ass
- string.replaceAll(“H\\w+|S\\w+”,”abc”);//abc abc ass
- 运算三:matches()
- String str=new String();
- if(str.matches(“Y\\w+”)) //
- 3.创建正则表达式
- 字符类
System.out.println("r".matches("[^ABC]"));//判断单词是否不含A、且包含BC
System.out.println("d".matches("[a-zA-Z]"));//判断是不是字母
System.out.println("a".matches("[ABC[abc]]"));//跟[ABCabc]是一样的吧
System.out.println("h".matches("[a-z&&[hij]]"));//首先是小写字母,其次必须是[hij]中的字母
- 量词
- . 除了\n之外的任意字符 -----不是量词
- * 表示0-无穷 .*表示0-n个字符
- + 表示1-无穷 .+表示1-n个字符
- 备注:JAVA正则表达式中需要转义的符号
- 1.”+”——>”\\+”;
- 2.”.”—— >”\\.”;
- 3.”\\”——>”\\”;
9.JAVA中的正则表达式的更多相关文章
- JAVA中的正则表达式--待续
1.关于“\”,在JAVA中的正则表达式中的不同: 在其他语言中"\\"表示为:我想要在正则表达式中插入一个普通的反斜杠: 在Java中“\\”表示为:我想要插入一个正则表达式反斜 ...
- java中使用正则表达式匹配字符串
在Java中使用正则表达式去匹配相应的字符串: String importFileRole = "(import)\\s*[a-zA-Z0-9_<>.]+\\;";// ...
- (转)Java中使用正则表达式的一个简单例子及常用正则分享
转自:http://www.jb51.net/article/67724.htm 这篇文章主要介绍了Java中使用正则表达式的一个简单例子及常用正则分享,本文用一个验证Email的例子讲解JAVA中如 ...
- 【java 正则表达式】记录所有在java中使用正则表达式的情况
本篇记录在java中邂逅正则表达式的所有美丽瞬间.因为在java和js中正则表达式的语法并不一致. 1.匹配字符串中有出现[2.1开头或者&2.1或者&3.1等的] Pattern m ...
- 译:Java 中的正则表达式性能概述
原文链接:https://www.baeldung.com/java-regex-performance 作者: baeldung 译者:Darren Luo 1. 概述 在本快速教程中,我们将展示模 ...
- java 中使用正则表达式操作字符串
import java.awt.Toolkit; import java.awt.datatransfer.Clipboard; import java.awt.datatransfer.DataFl ...
- java中的正则表达式捕获组与引用的概念
今天群里有个人问,怎样用增则表达式匹配三角形的三边,其实只是要匹配三个数字而已,如 301 402 503 开始认为很简单,我就写了一个 "(([1-9]\\d?)\\s){2}$2&q ...
- js和java中使用正则表达式校验邮箱
问题:经常在项目中要校验邮箱? 邮箱格式:首位必须为字母,必须包含一个@符号,并且@之后有个名字,之后还有个.,再有一个后缀名 例如:wyp55023@163.com 一.java中代码如下: Str ...
- java中的正则表达式And Pattern And Macher
在哪里?? java.util.regex包下有两个用于正则表达式的类, 一个是Matcher类, 另一个Pattern 简单例子 public class RegexLeaning { public ...
随机推荐
- 大图居中,以1920px为例
<div style="overflow: hidden; position: relative;"> <img src="img.jpg" ...
- 利用phpize 外挂php扩展
如果你的php是手动编译安装的 ,可能有一些扩展一开始并没有开启,以后需要某扩展的时候又不想重新编译php,使用phpize可以动态添加扩展 以Ubuntu为例, 如果你是我这样安装php的 apt ...
- java spring mvc完整包下载地址
推荐使用该地址:http://maven.springframework.org/release/org/springframework/spring/ 更多详细参考地址:http://blog.cs ...
- php魔术方法使用场景
php魔术方法-----__tostring(),__invoke,__call(),__callStatic ... __tostring(),__invoke() __tostring()方法是在 ...
- Processing基础之绘画
图形 //在(x, y)绘制点 point(x, y); //(x1, y1)到(x2, y2)的一条线 line(x1, y1, x2, y2); rect(x, y, weight, height ...
- miniui前台无法显示数据
坑爹,刚开始使用miniui重写对账单的功能,显示数据的时候明明已经获取到json数据了,但前台还是显示不出来,找了一上午的原因,终于找到是因为前台显示字段的field值要改成和json中(数据库字段 ...
- python基础2(数据类型、数据运算、for循环、while循环、列表)
1.数据类型 python使用对象模型来存储数据,每一个数据类型都有一个内置的类,每新建一个数据,实际就是一个对象,即所有数据都是对象. 对象的3个特性: 身份:即内存地址,可以用id()来获取 类型 ...
- [Unity] 导出Android APK包出错
确认Android环境是OK的. 检查 StreamingAssets 目录下是否有中文的文件名 检查其它目录的中文文件名. 移除一些插件再试.
- Canvas绘制图形
1.Canvas绘制一个蓝色的矩形 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...
- 2016-03-04记录 H264.TXT 转成 H264.h264
H264.TXT文件 来源于板子上串口输出的数据,需要把该数据转成 *.h264用 H264的软件打开观察 txt中数据截图如下: MATLAB读入数据的代码: clc;close all;clear ...