以下例子均在Search and Replace中适用,EditPlus也有正则表达式,但有点不一样。

1.1 基本操作符

*

重复0次或更多次

+

重复一次或更多次

重复一次

|

或 操作符

非 操作符

^

以^后字符开始的行

$

以$前字符结尾的行

^^

以^^后字符开始的文件

$$

以$$前字符结尾的文件

[]

范围操作符

()

子串

+n

指定列数操作符,常与()或[]配合使用

1.2 正则表达式的查找

*   Zero or More Operator:匹配在()或[]中零次或更多次的表达式。*也可以单独使用,如果单独使用,将是匹配一行里从开始到结束的所有字符。也可以在*后指定字符以匹配两个或更多直至最大匹配数的表达式(可以在软件中修改)。

例子:    *(is)              出现零次或更多次的is,如is, Mississippi

*[is]              出现零次或更多次的i或s,如 Some, Expression,single

Windows*[0-9]          以Windows为开始,随后跟着0-9字符的字符串

windows*[]95            以windows为开始,随后跟着任意个字符,后以95结尾的字符串

+  One Or More Operator:重复出现1次或多次操作符。

例子:    +(is)      匹配字符串is,Mississippi

w+e       匹配字符串wide,white,write,不匹配we

?   One Occurrence Operator:?前或后的字符串出现一次。也可以放在两个字符串之间,放在()前时,表示()内表达式出现一次。

例子:    ?(is)              匹配       is

win?95  匹配       win 95,win-95,win/95

|    Or Operator:与操作符。需要与()操作符配合使用。

例子:    (01/|02/)+[0-9](/95|/98)   匹配       01/15/98和02/12/98  前三个字符为01/或者02/,后面出现一到多位的0-9数字,后面跟着/95或者/98

w*[a-z](98|NT)\?        匹配       windows 98?,win NT?   以w为开始的字符串,后面跟着n(n>=1)个位的字母(必须为a到z),跟着98或者NT字符,最后以?结尾。注意:要查找?等表达式时,要使用转义符\ 。

!    Not Operator:非操作符。可以与()操作符配合使用。

例子:    ?at!((b|c)at)         匹配       mat 和 sat 而不是 bat 或者 cat。注意:双重括号的使用

*file!(beg*file)     匹配       a file 和 this file 而不是 beginning of file

*98!(Windows 98)     匹配       1998 而不是Windows 98

*98!(+[a-z ]98)           匹配       1998 而不是 windows 98

a?b?c!(aub?c)!(a?bvc)      查找aXbYc,X不是u,Y不是v

^  Beginning Of Line Operator:以^后字符为开始的行,注意是行而不是一个单词。

例子:    ^the      查找以the,The,THE开头的行

^(the|[a<])          查找以the或A或<开头的行

^*( )BEnd\r\n*( )Exit Function              匹配       <space(s)(零个或多个空格)>Bend<接着下一行>Exit Function

$   End Of Line Operator:以$后字符为结束的行,跟^差不多,可以配合一起使用。

^^       Beginning Of File Operator:以^^后字符为开始的文件。

$$        End Of File Operator:以$$后字符为结束的文件。

[]   Range Operator:可以参照上面的例子使用,注意*[]匹配的是最大可容纳的字符串,包括一些换行符,可以在多行之间查找。

()   Subexpression Operator:可以参照上面的例子使用。

+n              Column Specifier:可以参照上面的例子使用。

Search and Replace的正则表达式的更多相关文章

  1. js正则函数match、exec、test、search、replace、split使用介绍集合,学习正则表达式的朋友可以参考下。

    match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对 ...

  2. JavaScript 正则表达式——定义,目的,特点,语法,字符串方法,search() ,replace() ,test(),exec()

    ㈠什么是正则表达式? ⑴正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.    正则表达式通常被用来检 ...

  3. js正则函数match、exec、test、search、replace、split使用介绍集合

    match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对 ...

  4. js正则函数match、exec、test、search、replace、split使用集合

    match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对 ...

  5. js进阶js中支持正则的四个常用字符串函数(search march replace split)

    js进阶js中支持正则的四个常用字符串函数(search march replace split) 一.总结 代码中详细四个函数的用法 search march replace split 二.js进 ...

  6. Mac下使用Wine安装文件内容搜索工具Search and Replace

    下载: (链接: https://pan.baidu.com/s/1mij7WX6 密码: xsu8) 安装: 1.安装Wine 参考:http://www.cnblogs.com/EasonJim/ ...

  7. Search and Replace -freecodecamp算法题目

    Search and Replace 1.要求 使用给定的参数对句子执行一次查找和替换,然后返回新句子. 第一个参数是将要对其执行查找和替换的句子. 第二个参数是将被替换掉的单词(替换前的单词). 第 ...

  8. Ubuntu 16.04下使用Wine安装文件内容搜索工具Search and Replace

    说明: 1.使用的Wine版本是深度出品(Deepin),已经精简了很多没用的配置,使启动能非常快,占用资源小. 2.关于没有.wine文件夹的解决方法:在命令行上运行winecfg: 下载: (链接 ...

  9. 正则表达式test()和exec()、 search() 和 replace()用法实例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. SQL Server之游标的基础知识

    什么是游标: 游标是可以在结果集中上下游动的指针. 游标的作用: --允许定位到结果集中的特定行. --从结果集的当前位置检索一行或多行数据. --支持对结果集中当前位置的行进行修改. 注意:游标虽然 ...

  2. codevs 1227 方格取数 2

    Description 给出一个n*n的矩阵,每一格有一个非负整数Aij,(Aij <= 1000)现在从(1,1)出发,可以往右或者往下走,最后到达(n,n),每达到一格,把该格子的数取出来, ...

  3. usb驱动开发18之设备生命线

    现在已经使用GET_DESCRIPTOR请求取到了包含一个配置里所有相关描述符内容的一堆数据,这些数据是raw的,即原始的,所有数据不管是配置描述符.接口描述符还是端点描述符都挤在一起,所以得想办法将 ...

  4. noi题库(noi.openjudge.cn) 1.9编程基础之顺序查找T06——T15

    T06 笨小猴 描述 笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼.但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大! 这种方法的具体描述如下:假设maxn是单词 ...

  5. string to char* and char* to string 玩转 String 和 Char*

    char 类型是c语言中常见的一个数据类型,string是c++中的一个,它的定义为 Strings are objects that represent sequences of character ...

  6. 实现Linux与Windows下一致的命令行

    这其实是个非常简单的东西. 我们会写一些命令行的工具,一般跨平台的话,会用python或者perl写,比如叫foo.py,然后在Windows和Linux下调用这个脚本: Linux: foo.py ...

  7. nodejs学习之实现简易路由

    此前实现了个数据转发功能,但是要建本地服务器,还需要一个简易的路由功能.因为只是用于本地服务器用于自己测试用,所以不需要太完善的路由功能,所以也就不去使用express框架,而是自己实现一个简易路由, ...

  8. iOS-- 快速集成iOS基于RTMP的视频推流

    效果图 iTools有点卡, 但是推到服务器倒是很快的. 推流 前言 这篇blog是iOS视频直播初窥:<喵播APP>的一个补充. 因为之前传到github上的项目中没有集成视频的推流.有 ...

  9. 51-du 显示关于目录层次结构或文件磁盘使用情况的信息

    显示关于目录层次结构或文件磁盘使用情况的信息 du [options] [path-list] 参数 不带任何参数的du将显示工作目录及其子目录磁盘使用情况的信息,path-list指定要获取磁盘占用 ...

  10. php上传文件

    php部分: <?php /* 注释:允许用户上传文件是一个巨大的安全风险. 请仅仅允许可信的用户执行文件上传操作. */ header("Content-type: text/htm ...