- 浏览: 42091 次
-
最新评论
java中正则表达式运用实例(参看java中正则表达式运用详解): 测试代码 type="application/x-shockwave-flash" width="14" height="15" src="http://fhd001.javaeye.com/javascripts/syntaxh ighlighter/clipboard_new.swf" pluginspage="http://www.macromedia.com/go/getflash player" allowscriptaccess="always" quality="high" flashvars="clipboard=package%20test%3B%0A%2F**%0A% 20*%20%E5%9C%A8String%E7%9A%84matches()%E6%96%B9%E6 %B3%95%2Csplit()%E6%96%B9%E6%B3%95%E4%B8%AD%E4%BD%B F%E7%94%A8%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%B C%8F.%0A%20*%20%40author%20fhd001%0A%20*%2F%0Apubli c%20class%20RegexTest%20%7B%0A%0A%09public%20static %20void%20main(String%5B%5D%20args)%20%7B%0A%0A%09% 09%2F*%0A%09%09%20*%20%E6%99%AE%E9%80%9A%E5%AD%97%E 7%AC%A6%0A%09%09%20*%2F%0A%09%09String%20str1%20%3D %20%22abc45abc345%22%3B%0A%09%09String%5B%5Darr1%20 %3D%20str1.split(%22abc%22)%3B%0A%09%09for%20(Strin g%20string%20%3A%20arr1)%20%7B%0A%09%09%09System.ou t.print(string%2B%22--%3E%22)%3B%0A%09%09%7D%0A%09% 09System.out.println()%3B%0A%09%09%0A%09%09%0A%09%0 9%2F*%0A%09%09%20*%20%E7%AE%80%E5%8D%95%E7%9A%84%E8 %BD%AC%E4%B9%89%E5%AD%97%E7%AC%A6%0A%09%09%20*%20%E 5%9C%A8java%E4%B8%AD%E8%BD%AC%E4%B9%89%E5%AD%97%E7% AC%A6%E6%97%B6%E4%B8%80%E5%AE%9A%E8%A6%81%E7%94%A8% E5%8F%8C%E5%8F%8D%E6%96%9C%E7%BA%BF%2C%E4%B8%A4%E4% B8%AA%E6%96%9C%E7%BA%BF%E8%BD%AC%E4%B9%89%E6%88%90% E4%B8%80%E4%B8%AA%E6%96%9C%E7%BA%BF%2C%0A%09%09%20* %20%E5%9C%A8%E7%94%A8%E8%BF%99%E4%B8%AA%E6%96%9C%E7 %BA%BF%E5%AD%97%E7%AC%A6%E8%BD%AC%E4%B9%89%E9%82%A3 %E4%BA%9B%E7%89%B9%E6%AE%8A%E5%AD%97%E7%AC%A6.%0A%0 9%09%20*%2F%0A%09%09String%20str2%20%3D%20%22%5E%24 ()%5B%5D%7B%7D.%3F%2B*%7C%22%3B%0A%09%09boolean%20f lag%20%3D%20str2.matches(%22%5C%5C%5E%5C%5C%24%5C%5 C(%5C%5C)%5C%5C%5B%5C%5C%5D%5C%5C%7B%5C%5C%7D%5C%5C .%5C%5C%3F%5C%5C%2B%5C%5C*%5C%5C%7C%22)%3B%0A%09%09 System.out.println(flag)%3B%0A%09%09%0A%09%09%0A%09 %09%2F*%0A%09%09%20*%20%E8%BD%AC%E4%B9%89%E5%AD%97% E7%AC%A6%20%5CQ...%5CE.%0A%09%09%20*%2F%0A%09%09Str ing%20str3%20%3D%20%22%5E%24()%5B%5D%7B%7D.%3F%2B*% 7C99999%22%3B%0A%09%09boolean%20flag2%20%3D%20str3. matches(%22%5C%5CQ%5E%24()%5B%5D%7B%7D.%3F%2B*%7C%5 C%5CE%5C%5Cd%7B5%7D%22)%3B%0A%09%09System.out.print ln(flag2)%3B%0A%09%09%0A%09%09%0A%09%09%2F*%0A%09%0 9%20*%20%E5%AD%97%E7%AC%A6%E9%9B%86%E5%90%88%0A%09% 09%20*%2F%0A%09%09String%20str4%20%3D%20%22dfddri33 4%22%3B%0A%09%09boolean%20flag4%20%3D%20str4.matche s(%22.%2B%22)%3B%0A%09%09System.out.println(flag4)% 3B%0A%09%09%0A%09%09String%20str5%20%3D%20%22%23%24 %25%5E*())%25%22%3B%0A%09%09boolean%20flag5%20%3D%2 0str5.matches(%22%5C%5CW%7B9%7D%22)%3B%0A%09%09Syst em.out.println(flag5)%3B%0A%09%09%0A%09%09String%20 str6%20%3D%20%224gffmdkekrhhr%22%3B%0A%09%09boolean %20flag6%20%3D%20str6.matches(%22%5C%5Cw%2B%22)%3B% 0A%09%09System.out.println(flag6)%3B%0A%09%09%0A%09 %09String%20str7%20%3D%20%22fjfdke%20%20%20%20eett% 20%22%3B%0A%09%09boolean%20flag7%20%3D%20str7.match es(%22%5C%5Cw%2B%5C%5Cs%2B%5C%5Cw%7B4%7D%5C%5Cs%3F% 22)%3B%0A%09%09System.out.println(flag7)%3B%0A%09%0 9%0A%09%09String%20str8%20%3D%20%22%20%20%20erefff% 20%20%20%20%22%3B%0A%09%09boolean%20flag8%20%3D%20s tr8.matches(%22%5C%5Cs%2B%5C%5CS%2B%5C%5Cs%2B%22)%3 B%0A%09%09System.out.println(flag8)%3B%0A%09%09%0A% 09%09String%20str9%20%3D%20%22456776888%22%3B%0A%09 %09boolean%20flag9%20%3D%20str9.matches(%22%5C%5Cd% 2B%22)%3B%0A%09%09System.out.println(flag9)%3B%0A%0 9%09%0A%09%09%0A%09%09String%20str10%20%3D%20%22rty dfgrgwvr%20%20%22%3B%0A%09%09boolean%20flag10%20%3D %20str10.matches(%22%5C%5CD%2B%22)%3B%0A%09%09Syste m.out.println(flag10)%3B%0A%09%09%0A%09%09%0A%09%09 %2F*%0A%09%09%20*%20%E8%87%AA%E5%AE%9A%E4%B9%89%E5% AD%97%E7%AC%A6%E9%9B%86%E5%90%88%20%5B%20%5D%0A%09% 09%20*%2F%0A%09%09String%20str11%20%3D%20%22fdfeetg %20%2034566%22%3B%0A%09%09boolean%20flag11%20%3D%20 str11.matches(%22%5Bfdetg%5D%2B%5C%5Cs%2B%5B3-6%5D% 2B%22)%3B%0A%09%09System.out.println(flag11)%3B%0A% 09%09%0A%09%09%0A%09%09String%20str12%20%3D%20%22rt yuie%20%20%205768%22%3B%0A%09%09boolean%20flag12%20 %3D%20str12.matches(%22%5B%5Eabcdf%5D%2B%5C%5Cs%2B% 5B%5E1234%5D%2B%22)%3B%0A%09%09System.out.println(f lag12)%3B%0A%09%09%0A%09%09%0A%09%09%2F*%0A%09%09%2 0*%20%E5%8C%B9%E9%85%8D%E6%AC%A1%E6%95%B0%E9%99%90% E5%AE%9A%E7%AC%A6%0A%09%09%20*%2F%0A%09%09%0A%09%09 %2F%2F%E8%B4%AA%E5%A9%AA%E6%A8%A1%E5%BC%8F%0A%09%09 String%20str13%20%3D%20%22ytreggcv454444444333%22%3 B%0A%09%09boolean%20flag13%20%3D%20str13.matches(%2 2%5C%5Cw%7B20%7D%22)%3B%0A%09%09System.out.println( flag13)%3B%0A%09%09%0A%09%09boolean%20flag14%20%3D% 20str13.matches(%22%5C%5Cw%7B10%2C21%7D%22)%3B%0A%0 9%09System.out.println(flag14)%3B%0A%09%09%0A%09%09 boolean%20flag15%20%3D%20str13.matches(%22%5C%5Cw%7 B18%2C%7D%22)%3B%0A%09%09System.out.println(flag15) %3B%0A%09%09%0A%09%09String%20str14%20%3D%20%224%22 %3B%0A%09%09boolean%20flag16%20%3D%20str14.matches( %22%5C%5Cd%3F%22)%3B%0A%09%09System.out.println(fla g16)%3B%0A%09%09%0A%09%09String%20str15%20%3D%20%22 ddcvgt%22%3B%0A%09%09boolean%20flag17%20%3D%20str15 .matches(%22%5C%5CD%2B%5C%5Cd%3F%22)%3B%0A%09%09Sys tem.out.println(flag17)%3B%0A%09%09%0A%09%09String% 20str16%20%3D%20%22e33tf44t44t%22%3B%0A%09%09boolea n%20flag18%20%3D%20str16.matches(%22%5C%5Cw%2B%5C%5 CW*%22)%3B%0A%09%09System.out.println(flag18)%3B%0A %09%09%0A%09%09%2F%2F%E5%8B%89%E5%BC%BA%E6%A8%A1%E5 %BC%8F(%E5%8F%AA%E4%B8%BE%E4%B8%80%E4%BE%8B)%0A%09% 09String%20str17%20%3D%20%2234567ghjkkld%22%3B%0A%0 9%09boolean%20flag19%20%3D%20str17.matches(%22%5C%5 Cd%7B2%2C7%7D%3F%5C%5Cw%7B8%2C11%7D%22)%3B%0A%09%09 System.out.println(flag19)%3B%0A%09%09%0A%09%09%2F% 2F%E5%8D%A0%E6%9C%89%E6%A8%A1%E5%BC%8F(%E5%8F%AA%E4 %B8%BE%E4%B8%80%E4%BE%8B)%0A%09%09String%20str18%20 %3D%20%2222222ddddd%22%3B%0A%09%09boolean%20flag20% 20%3D%20str18.matches(%22%5C%5Cd%7B2%2C5%7D%2B%5C%5 Cw%7B6%7D%22)%3B%0A%09%09System.out.println(flag20) %3B%0A%09%09%0A%09%09%2F*%0A%09%09%20*%20%E5%AD%97% E7%AC%A6%E8%BE%B9%E7%95%8C%0A%09%09%20*%2F%0A%09%09 String%20str19%20%3D%20%22a444545rot44tm%22%3B%0A%0 9%09boolean%20flag21%20%3D%20str19.matches(%22%5Ea% 5C%5Cw%2Bm%24%22)%3B%0A%09%09System.out.println(fla g21)%3B%0A%09%09%0A%09%09%0A%09%09%2F*%0A%09%09%20* %20%E9%80%89%E6%8B%A9%E8%A1%A8%E8%BE%BE%E5%BC%8F%20 xxx%20%7C%20xxx%0A%09%09%20*%2F%0A%09%09String%20st r20%20%3D%20%22abc123abc%22%3B%0A%09%09boolean%20fl ag22%20%3D%20str20.matches(%22(abc%7C123)%7B3%7D%22 )%3B%0A%09%09System.out.println(flag22)%3B%0A%09%09 %0A%09%09%0A%09%09%2F*%0A%09%09%20*%20%E5%88%86%E7% BB%84%20(%20).%0A%09%09%20*%20%E4%BB%A5%E4%B8%8A%E4 %BF%AE%E9%A5%B0%E7%AC%A6%E9%83%BD%E6%98%AF%E9%92%88 %E5%AF%B9%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E8%BF %9B%E8%A1%8C%E4%BF%AE%E9%A5%B0.%E5%A6%82%E6%9E%9C%E 8%A6%81%E5%AF%B9%E4%B8%80%E7%BB%84%E5%AD%97%E7%AC%A 6%E8%BF%9B%E8%A1%8C%0A%09%09%20*%20%E4%BF%AE%E9%A5% B0%E5%B0%B1%E8%A6%81%E7%94%A8%E5%88%B0()%0A%09%09%2 0*%2F%0A%09%09String%20str21%20%3D%20%22123qwe123qw e%22%3B%0A%09%09boolean%20flag23%20%3D%20str21.matc hes(%22(123qwe)%7B2%7D%22)%3B%0A%09%09System.out.pr intln(flag23)%3B%0A%09%09%0A%09%09%0A%09%09%2F*%0A% 09%09%20*%20%5B%5D%E4%B8%AD%E7%9A%84%E4%BA%A4%E9%9B %86%E4%B8%8E%E5%B9%B6%E9%9B%86%0A%09%09%20*%2F%0A%0 9%09String%20str22%20%3D%20%22abcdefgh1234567%22%3B %0A%09%09boolean%20flag24%20%3D%20str22.matches(%22 %5Ba-z1-9%5D%2B%22)%3B%09%09%2F%2F%E5%B9%B6%E9%9B%8 6%0A%09%09System.out.println(flag24)%3B%0A%09%09%0A %09%09boolean%20flag25%20%3D%20str22.matches(%22%5B a-z1-9%26%26%5Ba-h1-7%5D%5D%2B%22)%3B%20%2F%2F%E4%B A%A4%E9%9B%86%0A%09%09System.out.println(flag25)%3B %0A%09%7D%0A%7D%0A">
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);
} }
结果代码 type="application/x-shockwave-flash" width="14" height="15" src="http://fhd001.javaeye.com/javascripts/syntaxh ighlighter/clipboard_new.swf" pluginspage="http://www.macromedia.com/go/getflash player" allowscriptaccess="always" quality="high" flashvars="clipboard=--%3E45--%3E345--%3E%0Atrue%0 Atrue%0Atrue%0Atrue%0Atrue%0Atrue%0Atrue%0Atrue%0At rue%0Atrue%0Atrue%0Atrue%0Atrue%0Atrue%0Atrue%0Atru e%0Atrue%0Atrue%0Afalse%0Atrue%0Atrue%0Atrue%0Atrue %0Atrue%0A">
发表评论
-
“千年传承,再续辉煌”--广东阳江漠阳剑派
2014-10-31 00:33 1重剑无锋,大音希声,周星驰说折凳是最好的武器,我说看似嘻 ... -
数组、字符串
2012-07-06 09:51 7901 一维数组 数 ... -
java 正则表达式
2012-07-06 09:37 735[b]Java [/b][b]正则表达式 [/b]在计算机 ... -
Flash CS5 用户自定义Button组件
2012-07-06 09:29 13202010/12/24 Flash CS5 用户自定义But ... -
自己写的自动完成js插件源码
2012-07-05 20:44 628经测试,此插件兼容ie,chrome,firefox。 / ... -
005_《Delphi6组件大全》
2012-07-03 13:42 1011Delphi 教程系列书籍 (005) 《Delphi6组 ... -
005_《Delphi6组件大全》
2012-07-03 12:16 597Delphi 教程系列书籍 (005) 《Delphi6组 ... -
关于flexigrid一点用法
2012-07-02 10:12 824闲来无事在网上找了一个jquery的grid插件 flex ... -
jsp页面
2012-07-02 10:12 713做人,生活,学习,玩.... ... -
Mate-基于标签的框架
2012-07-02 10:12 796Mate 将会成为Flex领域的另一个热点。它使用设置(c ... -
Flex中要想使图表的横坐标轴标签成45度显示(2)
2012-07-02 10:11 841从外部引入样式 1.在外部src/assets目录文 ... -
Flex获取操作XML示例
2012-07-01 09:32 695/****** ".",&qu ... -
The architecture of Flex and Java applications two (Flex 和 Java 应用程序架构 2)
2012-07-01 09:31 952Flex and Java application ... -
Flex编程学习基础
2012-07-01 09:31 761Flex是Adobe公司推出 ... -
使用HTTPService读取远程XML文件为TREE赋值的例子
2012-07-01 09:31 724在FLEX4中 使用一个HTTPService 读取远程的 ... -
flex 通过HTTPService与php通信
2012-07-01 09:31 797最近研究HTTPService与php通信,去网上查了好多 ... -
解决Flex4 发布后访问 初始化极其缓慢的问题
2012-06-30 11:16 1386解决Flex4 发布后访问 初始化极其缓慢的问题 2011年 ... -
flex builder 3, flex builder 4下载与安装
2012-06-30 11:16 947flex builder 3, flex builder 4 ... -
Flex4之使用ActionScript构建组件
2012-06-30 11:16 576Flex4之使用ActionScript构 ... -
flex 开源项目组件大全
2012-06-30 11:16 1120flex 开源项目组件大全 2010年09月13日 Fl ...
相关推荐
在Java中,正则表达式通过`java.util.regex`包提供的类来支持,主要包括`Pattern`、`Matcher`和`PatternSyntaxException`等。 1. **Pattern类**: `Pattern`类是用于编译正则表达式的,它将正则表达式转换为一个...
下面,我们将深入探讨C#中正则表达式的运用,并通过实例解析其工作原理。 1. 正则表达式基础 - 定义:正则表达式是由特殊字符(元字符)和普通字符组成的字符串,用来描述一种字符串模式。 - 元字符:例如 `.` ...
本篇文章将深入探讨C#中正则表达式的基本概念、常用方法和一些实用技巧。 一、正则表达式基础 1. 字符类: - 数字:`\d`(等同于[0-9]) - 非数字:`\D`(等同于[^0-9]) - 字母:`\w`(等同于[a-zA-Z0-9_]) ...
本资料主要涵盖Java中正则表达式的使用方法、语法特点以及相关API的详细解释。 在Java中,正则表达式的操作主要通过`java.util.regex`包来实现。这个包包含三个核心类:Pattern、Matcher和PatternSyntaxException。...
Java正则表达式教程是为那些想要深入了解Java编程语言中正则表达式使用方法的初学者准备的。正则表达式(Regular Expression)是一种强大的文本处理工具,它用于模式匹配、搜索、替换等操作,广泛应用于字符串处理和...
以上就是Java中正则表达式的基本概念和使用方法。掌握这些知识点后,可以解决大多数字符串处理的需求,例如数据验证、文本分析等。通过不断地实践和学习,你可以更深入地理解和运用正则表达式,提高代码的效率和灵活...
首先,`matches()`方法是Java `String`类中的一个函数,它接收一个正则表达式作为参数,并尝试在整个字符串中进行匹配。如果整个字符串都能匹配给定的正则表达式,那么`matches()`会返回`true`,否则返回`false`。 ...
本文主要围绕C#中正则表达式的基础知识、字符串搜索以及.NET框架内的相关类进行阐述。 1、正则表达式简介: 正则表达式提供了一种高效且灵活的方法来处理文本。它们可以用来快速分析大量文本,寻找特定的字符模式,...
通过以上介绍,我们了解了Java中正则表达式的基本概念、使用方法以及一些高级特性。熟练掌握正则表达式,能极大地提高我们处理文本数据的效率和准确性。在实际编程中,我们可以结合具体需求灵活运用这些知识,解决...
在Java中,我们可以使用`String`类的`matches()`方法来检查一个字符串是否符合特定的正则表达式模式。例如,实例1中,我们定义了一个正则表达式`"[1-9][0-9]{4,10}"`,这个正则模式匹配的是以1到9开头,后面跟着4到...
下面将详细讲解C#中正则表达式的使用方法和常见应用场景。 1. **正则表达式基础** - **模式匹配**:正则表达式可以用来检查一个字符串是否符合特定的模式。例如,`^\d{3}-\d{4}$`可以用来验证电话号码格式。 - **...
7. C#中正则表达式的使用:演示如何在C#代码中实例化和使用Regex类。 8. 性能优化:讨论处理大量字符串和正则表达式时的性能考虑和最佳实践。 9. 实战示例:提供实际应用场景的案例,帮助读者巩固理解并应用所学知识...
《C#与正则表达式手册》是一本深入探讨C#编程语言中正则表达式应用的专业指南。正则表达式在软件开发中扮演着重要角色,尤其在数据验证、文本处理和搜索替换等方面,其强大的模式匹配能力使得开发者能够高效地处理...
Java正则判断日期格式是否正确的方法示例主要介绍了Java正则判断日期格式是否正确的方法,结合实例形式分析了Java针对日期字符串正则判断的相关操作技巧。下面是Java正则判断日期格式是否正确的方法的详细介绍: 一...