`
pengtyao
  • 浏览: 401085 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

正则表达式简单使用说明

阅读更多
正则表达式简单使用说明

TongWeb5.0管理控制台虚拟主机中的"远程过滤"部分四个配置项的值设置形式都为正则表达式,这里简单介绍一下正则表达式表示形式(详细说明可参考JDK API中java.util.regex.Pattern类的文档说明或正则表达式规范):

预定义字符类:
.    任何单个字符(与行结束符可能匹配也可能不匹配)
\d   数字:[0-9]
\D   非数字: [^0-9]
\s   空白字符:[ \t\n\x0B\f\r]
\S   非空白字符:[^\s]
\w   单词字符:[a-zA-Z_0-9]
\W   非单词字符:[^\w]
\    转义字符,如表示{需写出\{


字符类:
[abc]           a、b 或 c(简单类)
[^abc]          任何字符,除了 a、b 或 c(否定)
[a-zA-Z]        a到z或A到 Z,两头的字母包括在内(范围)
[a-d[m-p]]      a到d或m到 p,也可表示成[a-dm-p](并集)
[a-z&&[def]]    d、e 或 f(交集)
[a-z&&[^bc]]    a到z,除了b和c,也可表示成[ad-z](减去)
[a-z&&[^m-p]]   a到z,除了m到p,也可表示成[a-lq-z](减去)


贪婪匹配数量词:
X?       0个或一个X
X*       0个或多个X
X+       1个或多个X
X{n}     恰好n个X
X{n,}    至少n个X
X{n,m}   至少n个X,但不超过m个,即n<=X<=m


惰性匹配数量词:
X??          一个X或一个也没有
X*?          0个或多个X
X+?         1个或多个X
X{n}?      恰好n个X
X{n,}?     至少n个X
X{n,m}?  至少n个X,但不超过m个,即n<=X<=m 

贪婪匹配:匹配尽可能多的字符
惰性匹配:匹配尽可能少的字符
举例说明:字符串
Tom is a <b>junior</b> developer <b>living</b> in <b>beijing</c>.
则贪婪匹配"<b>.*</b>"的结果是"<b>junior</b> developer <b>living</b>",惰性匹配"<b>.*?</b>"的结果 是"<b>junior</b>"和"<b>living</b>"

运算符:   
XY           X后面紧跟着Y
X|Y          X或Y
(X)          X作为捕获组

举例说明:
1.配置一个以168.1开头的任意远程地址为:
168\.1\.\d\{1,2\}|1\d\d|2[0-4]\d|25[0-5]\.\d\{1,2\}|1\d\d|2[0-4]\d|25[0-5]
如果不要求这么精准也可表示成:
168\.1\.\d\{1,3\}\.\d\{1,3\}
2.配置一个以TW开头的任意远程主机为:TW.* 。
1
0
分享到:
评论

相关推荐

    常用正则表达式举例说明

    一个简单的正则表达式可能由字符、元字符、量词和分组等组成。例如,"."代表任意单个字符,"\d"表示数字,"\w"代表字母、数字或下划线,"+"表示前面的元素出现一次或多次。通过组合这些元素,我们可以创建出复杂的...

    C语言正则表达式使用详解

    ### C语言正则表达式使用详解 #### 一、引言 正则表达式作为一种强大的文本处理工具,在数据检索和高级编程中应用广泛。对于C语言开发者而言,虽然标准的C语言本身并不直接支持正则表达式的操作,但是可以通过相关...

    jq非空验证,js正则表达式验证邮箱和手机号码

    在本案例中,我们关注的是使用jQuery(jq)进行非空验证,以及使用JavaScript(js)的正则表达式来验证邮箱和手机号码的正确性。以下是关于这些知识点的详细说明: 1. **jQuery(jq)非空验证**: jQuery是一种轻...

    [精通正则表达式(第三版)].(美)佛瑞德.扫描版(modify).pdf

    1. 正则表达式基础:介绍正则表达式的基本概念、构成元素,以及如何编写简单正则表达式进行基本的文本匹配。 2. 元字符和模式:深入讲解各种元字符的用法和它们在构建复杂模式时的组合方式,包括字符类、量词、边界...

    正则表达式入门教程(pdf版

    注释(comments)也是正则表达式中的一项重要功能,允许在表达式中添加说明文字,便于理解和维护。注释不会对匹配结果产生影响,因为它们会被正则表达式引擎忽略。正则表达式还可以包含处理选项,如忽略大小写(case...

    Java正则表达式的使用实例

    本实例将深入探讨如何在Java中使用正则表达式进行URL、电话号码等字符串的验证。 1. **基础概念** - **Pattern**: 代表一个正则表达式模式的类,可以编译成`Pattern`对象以便多次匹配。 - **Matcher**: 匹配器...

    Delphi2010正则表达式插件

    在Delphi 2010这个经典的集成开发环境中,有一款专门针对正则表达式的插件,它极大地提升了开发者的生产力,使得在Delphi程序中应用正则表达式变得简单而强大。 这款名为"Delphi 2010正则表达式插件"的组件,其核心...

    Actionscript_3_正则表达式的使用

    正则表达式由多个部分组成,包括元字符、元序列、标志以及数量表达符,下面将对这些组成部分及其使用方法进行详细说明。 ### 元字符 元字符是正则表达式中最基本的构成单元,它们具有特殊的含义,用于匹配特定的...

    正则表达式以及相关的用法举例说明

    在给定的部分内容中,提到了如何在C#中使用正则表达式进行验证的例子。以下是对这部分内容的详细解读: ##### 1. C#中的正则表达式验证示例 示例代码展示了如何使用C#中的 `System.Text.RegularExpressions` 命名...

    快速上手正则表达式

    正则表达式是一种文本处理工具,广泛应用于搜索、替换、识别符合特定模式的字符串。在文本处理和数据提取...无论是简单的文本匹配,还是复杂的字符串分析,正则表达式都能提供强大的支持,是文本处理不可或缺的技能。

    基于.net的正则表达式编辑调试工具

    通过这个工具,开发者可以更加便捷地进行正则表达式相关的开发工作,无论是简单的文本匹配还是复杂的模式查找,都能得到有效的支持。对于那些经常处理字符串操作的程序员来说,这是一个不可或缺的辅助工具。掌握正则...

    正则表达式教程 常用正则表达式

    通过简单的字符组合,正则表达式可以灵活地匹配文本中的特定模式或规则。 #### 二、常用正则表达式实例解析 ##### 1. 匹配数字序列 - **表达式**: `^[0-9]*$` - **说明**: 匹配任何由0到9的数字组成的字符串。 - ...

    Linux下的C语言正则表达式

    下面是一个简单的示例,展示了如何使用PCRE库进行正则表达式的编译、匹配及错误处理: ```c #include #include #include #include int main() { const char *pattern = "^[a-z]+@[a-z]+\\.[a-z]+$"; // 匹配...

    正则表达式在oracle中的应用

    例如,简单的正则表达式可以是一个具体的字符串(如`'TomSmith'`),也可以是一组复杂规则的组合。 **表1:部分正则表达式的特殊字符及其说明** | 特殊字符 | 描述 | |----------|-------------------------------...

    Perl正则表达式讲解

    通过上述示例,我们可以看到正则表达式在Perl中不仅可以用于简单的模式匹配,还能实现复杂的文本转换和替换,大大增强了程序的功能性和效率。熟练掌握Perl的正则表达式,对于编写高效、简洁的脚本代码至关重要。

    JavaScript RegExp 正则表达式对象详细说明

    JavaScript中的RegExp对象是用于处理正则表达式的内置对象,它提供了...掌握正则表达式在JavaScript中的使用对于处理字符串操作至关重要,无论是简单的查找、替换还是复杂的模式匹配,都能大大提高代码的效率和灵活性。

    JAVA 正则表达式(超详细)

    5. 使用 Java 正则表达式:使用 Java 正则表达式进行字符串模式匹配和字符串模式替换非常简单。Java 的 regex 包提供了详细的相关说明文档,使得正则表达式的使用变得更加容易。 6. 优点:Java 正则表达式具有许多...

Global site tag (gtag.js) - Google Analytics