正則表達式基础及java使用
正則表達式基础
正則表達式语法(1)
普通字符:字母,数字。汉子,下划线以及没有特殊定义的标点符号都是“普通字符”。表达式中的普通字符。在匹配一个字符串的时候,匹配与之同样的一个字符
- 简单的转义字符:
\n :代表换行符
\t :代表制表符
\\ :代表\本身
\^ ...... :代表匹配这字符本身
正則表達式语法(2)
- 标准字符集合:
可以与多种字符匹配的表达式
注意区分大写和小写,大写是相反的意思
\d :随意一个数字,0~9中的随意一个
\w:随意一个字母或者下划线或者汉字。也就是A~Z,a~z,0~9中的随意一个
\s :包含空格,制表符。换行符等空白符中的随意一个。
. :小数点能够匹配随意一个字符
正則表達式语法(3)
- 自己定义字符集合:
[ ]方括号匹配方式。可以匹配方括号里随意一个字符
[ab5@]: 匹配方括号里的随意一个字符
[^abc]: 匹配除了abc以外的随意一个字符
[f-k]: 匹配“f”-“k”之间的随意一个字符
[^A-F0-3]: 匹配非A-F和非0-3的随意一个字符
正則表達式语法(4)
- 修饰匹配次数的特殊符号
{n}: 表达式反复n次
{m,n}: 表达式至少反复m次。最多反复n次
{m,}: 表达式至少反复m次
?: 匹配表达式0次或者1次。相当于{0,1}
+ : 表达式至少出现1次。相当于{1,}
* : 表达式不出现或者出现随意次,相当于{0,}
匹配次数中的贪婪模式,(匹配字符愈多愈好。默认)
匹配次数中的非贪婪模式(匹配字符越少越好。修饰匹配次数的特殊符号后再加上一个“?“号)。样例:\d{2,4}?,这样就将模式改为非贪婪
正則表達式语法(5)
- 字符边界(本组标记匹配的不是字符而是位置,符合某种条件的位置)
^: 与字符串開始的位置匹配(以一行来算)
$: 与字符串结束的地方匹配
\b: 匹配单词边界 //比方boy\b 则在boy右边不是边界的不匹配
在java中使用正則表達式及经常使用函数
public class TestRegex {
public static void main(String []args)
{
//Pattern p = Pattern.compile("^\\d{4}"); //在java中的反斜杠要用两个前面一个转义,由于\d中的\做反义用
Pattern p = Pattern.compile("(\\d{4})([a-z]{2})");
Matcher m = p.matcher("asdfsadfsafd2342314asdfsadf2342asdfsaf");
System.out.println(m.matches()); //匹配整个目标字符串
System.out.println(m.find()); //查找字符串
List<String> list = new ArrayList<String>(); //用来存储找到的group
while(m.find()) //m.find()找到一个后就去找下一个了
{
System.out.println(m.group()); //group(),group(0)的作用是一样的
System.out.println(m.group(0));
System.out.println(m.group(1));
System.out.println(m.group(2)); //假设写3的话会超出范围
list.add(m.group());
}
String []str = "aa33fdf55cc".split("\\d{2}"); //依照两个整数来切分
String str2 ="asd2dsfdfds".replaceAll("\\ds", "**"); //将ds替换掉,生成新的字符串。由于前面是常量不可变
System.out.println("asdfsdf".matches("\\w+")); //匹配字符串
}
}
正則表達式基础及java使用的更多相关文章
- 深入浅出理解iOS经常使用的正則表達式—基础篇[Foundation]
參考资料:cocoachina的zys475481075的文章 几个单词 Regular ['regjʊlə]adj. 定期的:有规律的 Expression[ɪk'spreʃ(ə)n; ek-] n ...
- apache rewrite 正則表達式基础
用了好几次rewrite,用的次数不是非常多,每次都忘,都得又一次上网上找一堆现看,总结一下,以免以后忘了 =====================分隔符===================== ...
- JAVA中正則表達式总结
昨天,我的朋友请教我正則表達式.我也好久没有写过正則表達式了,昨天刚好看了下如鹏网创始人杨中科老师关于正則表達式的解说.使我加深了正則表達式的印像.现我把他总结下: 很多语言,包含Perl.PHP.P ...
- JAVA中正則表達式总结(具体解释及用途)
很多语言,包含Perl.PHP.Python.JavaScript和JScript,都支持用正則表達式处理文本,一些文本编辑器用正則表達式实现高级"搜索-替换"功能.所以JAVA语 ...
- python进阶十_正則表達式(一)
近期状态一直不太好,至于原因,怎么说呢,不好说,总之就是纠结中覆盖着纠结,心思全然不在点上,希望能够借助Python的学习以及博客的撰写来调整回来,有的时候回头想一想,假设真的是我自己的问题呢,曾经我 ...
- Python——正則表達式(2)
本文译自官方文档:Regular Expression HOWTO 參考文章:Python--正則表達式(1) 全文下载 :Python正則表達式基础 ======================== ...
- 使用正則表達式的格式化与高亮显示json字符串
使用正則表達式的格式化与高亮显示json字符串 json字符串非常实用,有时候一些后台接口返回的信息是字符串格式的,可读性非常差,这个时候要是有个能够格式化并高亮显示json串的方法那就好多了,以下看 ...
- hive正則表達式
hive中实现正則表達式,与java中的正則表達式有所差别: 这里经过探索总结了一些: hive中的正则能够用,可是有所差别,差别在于原来的'\' 转义,这里变成了双斜杠了'\\' hive中的正则解 ...
- JavaScript正則表達式知识汇总
Js 正則表達式知识汇总 正則表達式: 1.什么是RegExp?RegExp是正則表達式的缩写.RegExp 对象用于规定在文本中检索的内容. 2.定义RegExp:var +变量名=new RegE ...
随机推荐
- C Tricks(十八)—— 整数绝对值的实现
为正还是为负:(对 int 类型而言,第一位为符号位,其余为数值,则右移 31 位,再与 1 求与) 如果为正 ⇒ 返回原值 如果为负 ⇒ 对其二进制形式各位取反 + 1 int abs(int x) ...
- 2.lombok系列2:lombok注解详解
转自:https://www.imooc.com/article/18157 开篇 看到第一篇<初识lombok>你可能意犹未尽,本文我们按照场景来介绍一下常用的注解. 未特别说明,均标注 ...
- 5. Spring Boot 拦截器
转自:https://blog.csdn.net/catoop/article/details/50501696
- ajax的post请求与编码
window.onload = function(){ document.getElementById('username').onblur = function(){ var name = docu ...
- maven插件介绍之tomcat7-maven-plugin
tomcat7-maven-plugin插件的pom.xml依赖为: <dependency> <groupId>org.apache.tomcat.maven</gro ...
- amazeui学习笔记--js插件(UI增强)--警告框Alert
amazeui学习笔记--js插件(UI增强)--警告框Alert 一.总结 1.警告框基本样式:用am-alert声明div容器, <div class="am-alert" ...
- CSDN日报20170406 ——《代码非常烂,所以离职。》
[程序人生]代码非常烂.所以离职? 作者:stormzhang 我在面试的时候一般会问这么一个问题:你为什么离职? 当中有不少同学会提到这么一个原因.现在的项目代码太烂了,前人留下了非常多坑,我实在忍 ...
- XML Parser Errors See Details for more Information XML Parser Error on line 1: Document root ele
1.错误描写叙述 XML Parser Errors See Details for more Information XML Parser Error on line 1: Document roo ...
- javascript运算符应用
下面的代码会输出什么?为什么? console.log(1 + "2" + "2"); console.log(1 + +"2" + &qu ...
- 【Codeforces Round #185 (Div. 2) D】Cats Transport
[链接] 链接 [题意] 有n座山,m只猫. 每只猫都在其中的一些山上玩. 第i只猫在h[i]山上玩,且会在t[i]时刻出现在山脚下(然后就一直在那里等) 然后有p个人. 它们听从你的安排. 在某个时 ...