java String matches 正则表达
- package test;
- /**
- * 在String的matches()方法,split()方法中使用正则表达式.
- * @author fhd001
- */
- public class RegexTest {
- public static void main(String[] args) {
- /*
- * 普通字符
- */
- String str1 = "abc45abc345";
- String[]arr1 = str1.split("abc");
- for (String string : arr1) {
- System.out.print(string+"-->");
- }
- System.out.println();
- /*
- * 简单的转义字符
- * 在java中转义字符时一定要用双反斜线,两个斜线转义成一个斜线,
- * 在用这个斜线字符转义那些特殊字符.
- */
- String str2 = "^$()[]{}.?+*|";
- boolean flag = str2.matches("//^//$//(//)//[//]//{//}//.//?//+//*//|");
- System.out.println(flag);
- /*
- * 转义字符 /Q.../E.
- */
- String str3 = "^$()[]{}.?+*|99999";
- boolean flag2 = str3.matches("//Q^$()[]{}.?+*|//E//d{5}");
- System.out.println(flag2);
- /*
- * 字符集合
- */
- String str4 = "dfddri334";
- boolean flag4 = str4.matches(".+");
- System.out.println(flag4);
- String str5 = "#$%^*())%";
- boolean flag5 = str5.matches("//W{9}");
- System.out.println(flag5);
- String str6 = "4gffmdkekrhhr";
- boolean flag6 = str6.matches("//w+");
- System.out.println(flag6);
- String str7 = "fjfdke eett ";
- boolean flag7 = str7.matches("//w+//s+//w{4}//s?");
- System.out.println(flag7);
- String str8 = " erefff ";
- boolean flag8 = str8.matches("//s+//S+//s+");
- System.out.println(flag8);
- String str9 = "456776888";
- boolean flag9 = str9.matches("//d+");
- System.out.println(flag9);
- String str10 = "rtydfgrgwvr ";
- boolean flag10 = str10.matches("//D+");
- System.out.println(flag10);
- /*
- * 自定义字符集合 [ ]
- */
- String str11 = "fdfeetg 34566";
- boolean flag11 = str11.matches("[fdetg]+//s+[3-6]+");
- System.out.println(flag11);
- String str12 = "rtyuie 5768";
- boolean flag12 = str12.matches("[^abcdf]+//s+[^1234]+");
- System.out.println(flag12);
- /*
- * 匹配次数限定符
- */
- //贪婪模式
- String str13 = "ytreggcv454444444333";
- boolean flag13 = str13.matches("//w{20}");
- System.out.println(flag13);
- boolean flag14 = str13.matches("//w{10,21}");
- System.out.println(flag14);
- boolean flag15 = str13.matches("//w{18,}");
- System.out.println(flag15);
- String str14 = "4";
- boolean flag16 = str14.matches("//d?");
- System.out.println(flag16);
- String str15 = "ddcvgt";
- boolean flag17 = str15.matches("//D+//d?");
- System.out.println(flag17);
- String str16 = "e33tf44t44t";
- boolean flag18 = str16.matches("//w+//W*");
- System.out.println(flag18);
- //勉强模式(只举一例)
- String str17 = "34567ghjkkld";
- boolean flag19 = str17.matches("//d{2,7}?//w{8,11}");
- System.out.println(flag19);
- //占有模式(只举一例)
- String str18 = "22222ddddd";
- boolean flag20 = str18.matches("//d{2,5}+//w{6}");
- System.out.println(flag20);
- /*
- * 字符边界
- */
- String str19 = "a444545rot44tm";
- boolean flag21 = str19.matches("^a//w+m$");
- System.out.println(flag21);
- /*
- * 选择表达式 xxx | xxx
- */
- String str20 = "abc123abc";
- boolean flag22 = str20.matches("(abc|123){3}");
- System.out.println(flag22);
- /*
- * 分组 ( ).
- * 以上修饰符都是针对一个字符进行修饰.如果要对一组字符进行
- * 修饰就要用到()
- */
- String str21 = "123qwe123qwe";
- boolean flag23 = str21.matches("(123qwe){2}");
- System.out.println(flag23);
- /*
- * []中的交集与并集
- */
- String str22 = "abcdefgh1234567";
- boolean flag24 = str22.matches("[a-z1-9]+"); //并集
- System.out.println(flag24);
- boolean flag25 = str22.matches("[a-z1-9&&[a-h1-7]]+"); //交集
- System.out.println(flag25);
- }
- }
- -->45-->345-->
- true
- true
- true
- true
- true
- true
- true
- true
- true
- true
- true
- true
- true
- true
- true
- true
- true
- true
- false
- true
- true
- true
- true
- true
java String matches 正则表达的更多相关文章
- Java String 中的一些函数与正则的结合使用
首先正则表达式在处理字符串问题时,真的非常强大. 正则可以帮助我们处理字符串的: 匹配, 选择, 编辑, 验证等问题. 正则中"\\"表示插入一个"\" 这里仅 ...
- Java正则表达中Greedy Reluctant Possessive 的区别
Java正则表达中Greedy Reluctant Possessive 的区别 分类: java2015-01-16 00:28 1280人阅读 评论(9) 收藏 举报 正则表达式Java 目录 ...
- java中的正则操作总结
http://www.cnblogs.com/nerxious/archive/2013/01/03/2842910.html 正则表达式在处理字符串的效率上是相当高的 关于正则表达式的使用,更多的是 ...
- HttpGet协议与正则表达
使用HttpGet协议与正则表达实现桌面版的糗事百科 写在前面 最近在重温asp.net,找了一本相关的书籍.本书在第一章就讲了,在不使用浏览器的情况下生成一个web请求,获取服务器返回的内容.于 ...
- shell正则表达
shell正则表达 .*和.?的比较: 比如说匹配输入串A: 101000000000100 使用 1.*1 将会匹配到1010000000001,匹配方法:先匹配至输入串A的最后, 然后向前匹配,直 ...
- 使用HttpGet协议与正则表达实现桌面版的糗事百科
写在前面 最近在重温asp.net,找了一本相关的书籍.本书在第一章就讲了,在不使用浏览器的情况下生成一个web请求,获取服务器返回的内容.于是在网上搜索关于Http请求相关的资料,发现了很多资料都是 ...
- Java String.replaceAll() 与后向引用(backreference)
问题 昨天看到一篇博文,文中谈到一道 Java 面试题: 给定一字符串,若该字符串中间包含 "*",则删除该 "*":若该字符串首字符或尾字符为 "* ...
- php 正则表达示中的原子
原子 原子是正则表达示里面的最小单位,原子说白了就是需要匹配的内容.一个成立的正则表达示当中必须最少要有一个原子.大理石平台精度等级 所有可见不可见的字符就是原子 说明:我们见到的空格.回车.换行.0 ...
- Matches正则使用提取内容
用VS新建WinForm程序,窗体上是三个文本框和一个按钮.可以自己构造正则表达式,自己修改匹配内容 正则表达是要提取的部分为hewenqitext 代码如下: using System; using ...
随机推荐
- 使用JQuery做一组复选框的功能。
之前做过复选框的功能,奈何笔记丢失,害的我又鼓捣了一番...还是博客园做笔记比较好. 假设现在有一个表格,每一行都有一个复选框按钮.在表头还有一个全选的复选框按钮. ①.当点击一个全选按钮时,下面的同 ...
- bzoj2816 [ZJOI2012]网络
Description http://www.lydsy.com/JudgeOnline/upload/zjoi2012.pdf 正解:$link-cut \ tree$. $LCT$板子题,直接维护 ...
- 第三方库RATreeView的使用记录
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/u012951123/article/details/36421939 由于项目须要用到树状列表,能够 ...
- BZOJ2179:FFT快速傅立叶(FFT)
Description 给出两个n位10进制整数x和y,你需要计算x*y. Input 第一行一个正整数n. 第二行描述一个位数为n的正整数x. 第三行描述一个位数为n的正整数y. Output 输出 ...
- cin,get,getline
一.cin 1.cin使用空白(空格.制表符和换行符)来确定字符串结束的位置,并且对于换行符,cin会把换行符留在输入队列.cin读取字符串放到数组中,并自动在结尾添加空字符. 例如: ]; cin& ...
- PHP---练习-----留言板
题目::留言显示 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...
- Grunt中批量无损压缩图片插件--grunt-sprite
这是什么 这是一个帮助前端开发工程师将css代码中的切片合并成雪碧图的工具,它的主要功能是: 使用二叉树排列算法,对css文件进行处理,收集切片序列,生成雪碧图 在原css代码中为切片添加backgr ...
- HDU 2048 神、上帝以及老天爷(错排概率问题)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=2048 神.上帝以及老天爷 Time Limit: 2000/1000 MS (Java/Others) ...
- HDU 2031 进制转换(10进制转R进制)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=2031 进制转换 Time Limit: 2000/1000 MS (Java/Others) M ...
- 给出一个整数,将这个整数中每位上的数字进行反转(JavaScript编程)
一.问题描述:给出一个整数,将这个整数中每位上的数字进行反转.示例:输入:123,输出321:输入-123,输出-321:输入120,输出-21 二.问题分析与解决: 需要将给出的整数反转,注意示例中 ...