• 10.5


    今天学习了

    Java 正则表达式

    正则表达式定义了字符串的模式。

    正则表达式可以用来搜索、编辑或处理文本。

    正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。

    正则表达式实例

    一个字符串其实就是一个简单的正则表达式,例如 Hello World 正则表达式匹配 "Hello World" 字符串。

    .(点号)也是一个正则表达式,它匹配任何一个字符如:"a" 或 "1"。

    下表列出了一些正则表达式的实例及描述:

    正则表达式描述

    this is text

    匹配字符串 "this is text"

    thiss+iss+text

    注意字符串中的 s+

    匹配单词 "this" 后面的 s+ 可以匹配多个空格,之后匹配 is 字符串,再之后 s+ 匹配多个空格然后再跟上 text 字符串。

    可以匹配这个实例:this is text

    ^d+(.d+)?

    ^ 定义了以什么开始

    d+ 匹配一个或多个数字

    ? 设置括号内的选项是可选的

    . 匹配 "."

    可以匹配的实例:"5", "1.5" 和 "2.21"。

    Java 正则表达式和 Perl 的是最为相似的。

    java.util.regex 包主要包括以下三个类:

    • Pattern 类:

      pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共构造方法。要创建一个 Pattern 对象,你必须首先调用其公共静态编译方法,它返回一个 Pattern 对象。该方法接受一个正则表达式作为它的第一个参数。

    • Matcher 类:

      Matcher 对象是对输入字符串进行解释和匹配操作的引擎。与Pattern 类一样,Matcher 也没有公共构造方法。你需要调用 Pattern 对象的 matcher 方法来获得一个 Matcher 对象。

    • PatternSyntaxException:

      PatternSyntaxException 是一个非强制异常类,它表示一个正则表达式模式中的语法错误。

    以下实例中使用了正则表达式 .*runoob.* 用于查找字符串中是否包了 runoob 子串:

    实例

    import java.util.regex.*; class RegexExample1{ public static void main(String args[]){ String content = "I am noob " + "from runoob.com."; String pattern = ".*runoob.*"; boolean isMatch = Pattern.matches(pattern, content); System.out.println("字符串中是否包含了 'runoob' 子字符串? " + isMatch); } }

    实例输出结果为:

    字符串中是否包含了 'runoob' 子字符串? true
  • 相关阅读:
    使用POI读取excel文件内容
    有序链表
    jQuery Validate验证框架详解
    怎样在VS2010中打开VS2012的项目
    在Win8.1系统下如何安装运行SQL Server 2005
    SQL2005 2008配置错误,无法识别的配置节 system.serviceModel machine.config配置文件有问题
    深入浅出学Spring Data JPA
    Java 学习摘要
    JFinal
    spring 4 + jpa(hibernate 3/4) + spring mvc 多数据源配置
  • 原文地址:https://www.cnblogs.com/dty602511/p/14159739.html
Copyright © 2020-2023  润新知