`

java正则简单用列

阅读更多
package com.simple.example;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * java正则工作中的使用
 * ==========================================
 * ^A匹配以A开头
 * $A匹配以A结尾
 * \s?匹配0个或多个空格
 * \S+表示至少一个字符
 * \S{0,6}表示0到6个字符
 * [0-9]*匹配0到9的数字(多个)
 * ()将括号里面的内容作为一个独立的单元,理解为一组,用于获取对应的字符串使用
 * ============================================
 * java正则入门可以参考: http://su1216.iteye.com/blog/1570964
 *
 * @author xiangnong
 * @author yongchun.chengyc@gmail
 */
public class RegTest {

    private static final String OCTCHECK_2 = "^-A\\s?INPUT\\s?-s\\s?(\\S+)\\s?-p\\s?(\\S{0,6})\\s?-m\\s?(\\S{0,6})\\s?--dport\\s?([0-9]*)\\s?-j\\s?ACCEPT$";
    private static final Pattern otcReg2 = Pattern.compile(OCTCHECK_2);

    public static void main(String args[]) {
        Matcher matcher = otcReg2.matcher("-A INPUT -s 210.51.31.11 -p tcp -m tcp --dport 38422 -j ACCEPT");
        if (matcher.matches()) {
            System.out.println(matcher.group()); // 和matcher.group(0)等价

            System.out.println(matcher.group(1));
            System.out.println(matcher.group(2));
            System.out.println(matcher.group(3));

            //输出结果为:
            /**
             * -A INPUT -s 210.51.31.11 -p tcp -m tcp --dport 38422 -j ACCEPT
             * 210.51.31.11
             * tcp
             * tcp
             * */
        }

    }
}

 

分享到:
评论

相关推荐

    Java 正则表达式详解

    ### Java正则表达式详解 #### 一、正则表达式基础知识 正则表达式是一种强大的文本处理工具,被广泛应用于各种编程语言中,用于文本的查找与替换、验证及提取等任务。Java作为一种主流的编程语言,在其标准库中也...

    Java常见的正则表达式语法

    以上列出的正则表达式覆盖了各种常见场景,从简单的数字验证到复杂的字符串匹配,是Java开发中非常实用的工具。在实际应用时,可以根据具体需求调整这些表达式,以满足更复杂的数据校验和处理任务。

    一个java正则表达式工具类源代码.zip(内含Regexp.java文件)

    以前写了一个java的正规表达式的java工具类,分享一下,有用到的欢迎下载使用。 如果你有常用的定义好的,且测试通过的正规表达式,欢迎跟贴,也让我享用一下 . 类中用到了 jakarta-oro-2.0.jar 包,请大家自己在 ...

    JDK+JQUERY+正则表达式API

    开发者可以通过查阅这些API来了解如何使用Java的各种功能,例如`java.util.ArrayList`用于动态数组操作,`java.net.Socket`用于网络通信,或者`java.lang.Thread`用于实现并发执行。 接下来,JQuery是JavaScript的...

    Java 正则表达式

    Java 正则表达式 正则表达式定义了字符串的模式。 正则表达式可以用来搜索、编辑或处理文本。 正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。 正则表达式实例 一个字符串其实就是一个简单的正则...

    java文件读写和正则表达式检索字符次位.pdf

    但在上述代码中,正则表达式的应用相对简单,使用了字符串的`split()`方法,这个方法会根据传入的正则表达式分割字符串。例如,`line.split(reg)`会将字符串`line`按`reg`分隔,返回一个字符串数组。 【字符位置...

    jspbook.rar_java md5_java 管理_jsp tomcat_md5_正则表达式

    【标题】"jspbook.rar" 是一个包含Java Web开发相关资源的压缩文件,重点在于使用JSP、JavaBean以及Access数据库技术。这个项目是为在Tomcat应用服务器上运行而设计的,无需额外配置数据源。 【描述】该资源描述了...

    正则表达式javatxt

    以上正则表达式覆盖了IT行业中常见文本处理的需求,从简单的字符匹配到复杂的模式分析,是进行数据清洗、格式验证和安全检查的重要工具。掌握这些表达式的构造和使用,对于提升代码质量和数据处理效率具有重要意义。

    hivezzy:添加partition支持正则表达式

    同时,性能测试也很关键,因为正则表达式匹配可能会比简单的字符串比较消耗更多的资源。 5. **文档更新**:为了帮助用户理解和使用新功能,`hivezzy`项目应该提供详细的文档,解释如何编写正则表达式查询,以及性能...

    陕西移动号段表及正则表达式

    正则表达式的使用需要一定的编程基础,常见的编程语言如Python、JavaScript、Java等都支持正则表达式。通过编程,我们可以方便地读取这个文本文件,并将其中的正则表达式应用于实际的数据处理任务中。 总的来说,这...

    linux shell 正则表达式(BREs,EREs,PREs)差异比较

    Awk(尤其是gawk)是用于模式扫描和处理的文本分析工具,它在处理文本时通常使用EREs,也可以进行列的处理,例如从特定列中提取数据。 在了解了正则表达式的基础分类之后,下面详细介绍它们在Linux文本工具中的应用...

    Java开发技术大全(500个源代码).

    代码范例列表 第1章 ... useArray2.java 用反射机制使用数组示例2 第10章 示例描述:本章学习泛型。 demoBounds.java 演示有界类型 demoForceChange.java 演示强制类型转换 demoGeneric.java ...

    VB.NET源码 -一行多列转一列多行数据.txt

    以下是一个简单的VB.NET示例代码片段,演示如何进行这样的转换: ```vb.net Imports System.Collections.Generic Module Module1 Sub Main() ' 假设这是原始数据,每一项是多值的字符串 Dim data As New List...

    正则表达式详解30分钟入门

    例如,为了精确匹配以“t”开头且以“n”结尾,并且中间是元音字母“a”、“e”、“i”或“o”的单词,可以使用正则表达式“t[aeio]n”。这样只能匹配“tan”、“ten”、“tin”和“ton”。 **1.3 “或”符号** 在...

    java jdk实列宝典 光盘源代码

    java为数据结构中的列表定义了一个接口类java.util.list同时提供了3个实现类,分别是ArrayList、Vector、LinkedList使用; 生成不重复的随机数序列;列表、集合与数组的互相转换;java为数据结构中的映射定义一个接口...

    Editplus--java编辑器

    在编写Java代码时,只需键入部分类名或方法名,EditPlus就能自动列出可能的选项,大大减少了手动输入的时间,提高了编程速度。此外,它还具备自动缩进和代码折叠功能,使得大型代码文件的管理和阅读变得轻而易举。 ...

    java模糊查询方法

    Java提供了`java.util.regex`包来支持正则表达式的使用。通过`Pattern`和`Matcher`类可以进行文本的匹配操作。 ```java String patternString = "pattern"; Pattern pattern = Pattern.compile(patternString); ...

Global site tag (gtag.js) - Google Analytics