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 ...
随机推荐
- bzoj1584
1584: [Usaco2009 Mar]Cleaning Up 打扫卫生 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 467 Solved: 31 ...
- Python笔记(3)迭代器与生成器
参考自:http://www.cnblogs.com/huxi/category/251137.html 迭代器 迭代器是访问集合内元素的一种方式,他不能倒退只能一直迭代下去.可以写到for循环in后 ...
- struts2+spring+hibernate(SSH)框架的搭建和总结
SSH框架:struts2+spring+hibernate,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活.易于扩展的多层Web应用程序. struts2+spring+hibernat ...
- phpexcel导入数据提示失败
phpexcel导入excel时明明只有几行数据,却提示506行失败,原来是excel中有506行"无效数据"(看起来是空的,但是和没有数据不一样).
- TP-LINK WR941 DD-WRT刷回OpenWRT及OpenWRT刷回原厂固件
1.DD-Wrt 刷回 OpenWrt A.从官网下载固件: root@TL-DDWRT:/tmp# wget http://downloads.openwrt.org/barrier_breaker ...
- 轻松理解spring IOC
spring IOC(Inversion of control)即控制反转 概念:一,spring框架的核心之一 二,控制权由对象本身转向容器:由容器根据配置文件去创建实例并创建各个实例之间的依赖关系 ...
- ecshop后台权限审核列表
1.权限语言包 languages\zh_cn\admin\priv_action.php //微仓 $_LANG['depot'] = '微仓管理'; $_LANG['depot_list_is_c ...
- js获取url信息
设置或获取对象指定的文件名或路径. alert(window.location.pathname) 设置或获取整个 URL 为字符串. alert(window.location.href); 设置或 ...
- MySQL 调优/优化的 100 个建议
MySQL 调优/优化的 100 个建议 MySQL是一个强大的开源数据库.随着MySQL上的应用越来越多,MySQL逐渐遇到了瓶颈.这里提供 101 条优化 MySQL 的建议.有些技巧适合特定 ...
- gzip的使用
经常会有文件过大,给文件的传输和增添了很多的麻烦,早先得知apach有个base64貌似可以用来压缩文件,但是测试没有什么效果,反而增大了文件的大小.今天了解了java自带的gzip包,如获至宝,超级 ...