Java正则表达式测试用例

(1)对IP地址进行排序:

 1 public static void test_1() {
 2         String ip_str = "192.168.10.34   127.0.0.1 3.3.3.3 105.70.11.55 ";
 3         // 1,为了让ip可以按照字符串顺序比较,只要让ip的每一段的位数相同。
 4         // 所以,补零,按照每一位所需做多0进行补充。每一段都加两个0.
 5         ip_str = ip_str.replaceAll("(\\d+)", "00$1");
 6         System.out.println(ip_str);
 7         // 然后每一段保留数字3位。
 8         ip_str = ip_str.replaceAll("0*(\\d{3})", "$1");
 9         System.out.println(ip_str);
10         // 1,将ip地址切出。
11         String ips[] = ip_str.split(" +");
12         TreeSet<String> ts = new TreeSet<String>();
13         for (String ip : ips) {
14             ts.add(ip);
15         }
16         // 对一个字段的四个部分按规则再切一次
17         for (String ip : ts) {
18             System.out.println(ip.replaceAll("0*(\\d+)", "$1"));
19         }
20     }

运行结果:

00192.00168.0010.0034   00127.000.000.001 003.003.003.003 00105.0070.0011.0055
192.168.010.034   127.000.000.001 003.003.003.003 105.070.011.055
3.3.3.3
105.70.11.55
127.0.0.1
192.168.10.34

(2)字符串截取:

 1 public static void test_2() {
 2         String st1 = "今今今....今今今....天....天天天天天....天天天.学学学.学学学学学学...学.习习习...习习习习";
 3         // 将字符串中的"."去除
 4         String regex = "\\.+";
 5         st1 = st1.replaceAll(regex, "");
 6         System.out.println(st1);
 7         // 去除叠词
 8         st1 = st1.replaceAll("(.)\\1+", "$1");
 9         System.out.println(st1);
10     }

运行结果:

今今今今今今天天天天天天天天天学学学学学学学学学学习习习习习习习
今天学习

(3) 对邮件地址校验:

 1  public static void test_3() {
 2   String mail = "[email protected]";
 3
 4   String regex = "[a-zA-Z0-9_][email protected][a-zA-Z0-9]+(\\.[a-zA-Z]{1,3})+";
 5
 6   regex = "\\[email protected]\\w+(\\.\\w+)+";// [email protected]
 7
 8   boolean b = mail.matches(regex);
 9
10   System.out.println(mail + ":" + b);
11  }

运行结果:

[email protected]:true
时间: 2024-10-09 19:39:41

Java正则表达式测试用例的相关文章

java正则表达式语法详解及其使用代码实例

原文地址 译者序(下载代码) 正则表达式善于处理文本,对匹配.搜索和替换等操作都有意想不到的作用.正因如此,正则表达式现在是作为程序员七种基本技能之一*,因此学习和使用它在工作中都能达到很高的效率. 正则表达式应用于程序设计语言中,首次是出现在 Perl 语言,这也让 Perl 奠定了正则表达式旗手的地位.现在,它已经深入到了所有的程序设计语言中,在程序设计语言中,正则表达式可以说是标准配置了. Java 中从 JDK 1.4 开始增加了对正则表达式的支持,至此正则表达式成为了 Java 中的基

JAVA正则表达式:Pattern类与Matcher类详解(转)

java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包.它包括两个类:Pattern和Matcher Pattern 一个Pattern是一个正则表达式经编译后的表现模式. Matcher 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符串展开匹配检查. 首先一个Pattern实例订制了一个所用语法与PERL的类似的正则表达式经编译后的模式,然后一个Matcher实例在这个给定的Pattern实例的模式控制下进行字符串的匹配工作

Java正则表达式教程及示例

本文由 ImportNew - ImportNew读者 翻译自 journaldev.欢迎加入翻译小组.转载请见文末要求. [感谢 @CuGBabyBeaR  的热心翻译.如果其他朋友也有不错的原创或译文,可以尝试投递到 ImportNew.] 当我开始我的Java职业生涯的时候,对于我来说正则表达式简直是个是梦魇.本教程旨在帮助你驾驭Java正则表达式,同时也帮助我复习正则表达式. 什么是正则表达式? 正则表达式定义了字符串的模式.正则表达式可以用来搜索.编辑或处理文本.正则表达式并不仅限于某

JAVA 正则表达式 (超详细)

(PS:这篇文章为转载,我不喜欢转载的但我觉得这篇文章实在是超赞了,就转了过来,这篇可以说是学习JAVA正则表达的必读篇.作者是个正真有功力的人,阅读愉快) 在Sun的JavaJDK 1.40版本中,Java自带了支持正则表达式的包,本文就抛砖引玉地介绍了如何使用java.util.regex包. 可粗略估计一下,除了偶尔用Linux的外,其他Linu x用户都会遇到正则表达式.正则表达式是个极端强大工具,而且在字符串模式-匹配和字符串模式-替换方面富有弹性.在Unix世界里,正则表达式几乎没有

Java 正则表达式(精华)

英文:Jakob Jenkov译文:严亮链接:ifeve.com/java-regex/ Java 提供了功能强大的正则表达式API,在java.util.regex 包下.本教程介绍如何使用正则表达式API. 正则表达式 一个正则表达式是一个用于文本搜索的文本模式.换句话说,在文本中搜索出现的模式.例如,你可以用正则表达式搜索网页中的邮箱地址或超链接. 正则表达式示例 下面是一个简单的Java正则表达式的例子,用于在文本中搜索 http:// String text = "This is th

java正则表达式

在做 Crawler的时候,本来是准备用正则的,但是看jsoup很好用,就没有学,刚刚在做古诗提取的时候,又要用到正则表达式,还是学了算了. 说明: 文章重点参考的http://www.cnblogs.com/ggjucheng/p/3423731.html,加上自己有一点理解. 正则表达式的语法可以参考: http://www.runoob.com/regexp/regexp-syntax.html java正则表达式主要是关于java.util.regex中的两个类: 1.Pattern:正

Java正则表达式入门

众所周知,在程序开发中,难免会遇到需要匹配.查找.替换.判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力.因此,学习及使用正则表达式,便成了解决这一矛盾的主要手段. 大 家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配.  自从jdk1.4

Jmeter性能测试之如何写Java请求测试用例类

一. 引言: 最近工作中的一个项目要求做性能测试,该项目由提供服务的几个应用组成,选用的框架是阿里巴巴公司开源的服务框架Dubbo.关于Dubbo的介绍,网上也有很多资料,本人只是做了粗略的了解,没有深入研究,相关资料地址如下:http://www.iteye.com/magazines/103,http://alibaba.github.io/dubbo-doc-static/User+Guide-zh.htm#UserGuide-zh-%E6%80%A7%E8%83%BD%E6%B5%8B%

Java正则表达式初学

之前一直觉得正则表达式很NB,几乎各种类型的字符串都能够通过正则来进行匹配,抱着这种心态开始regular expressions的学习. 总的来讲,regular expressions的语法还是比较简单的,总共也没有多少. 下面先列举regular expressions的字符介绍,最后再通过实例加深对regular expressions的理解. 内容参考:http://www.cnblogs.com/elleniou/archive/2012/07/31/2617312.html 正则表