Search and Replace的正则表达式

以下例子均在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:可以参照上面的例子使用。

时间: 2024-10-08 11:13:29

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

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

原文 http://www.jb51.net/article/28007.htm js正则函数match.exec.test.search.replace.split使用介绍集合,学习正则表达式的朋友可以参考下. match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对象或字符串文字. rgExp 必选项.为包含正则表达式模式和可用标志的正则表达式对象.

JavaScript中String对象的match()、replace() 配合正则表达式使用

正则表达式由来已久,查找替换功能非常强大,但模板难记复杂. JavaScript中String对象的match().replace()这2个方法都要使用正则表达式的模板.当模板内容与字符串不相匹配时,match()返回null,replace()返回原字符串. 正则表达式的模板对象 //标准写法 regexp = new RegExp(pattern[, flag]); pattern: 模板的用法是关键,也是本章的主要内容. flag: "i"(ignore)."g&quo

Python - 连续替换(replace)的正则表达式(re)

字符串连续替换, 可以连续使用replace, 也可以使用正则表达式. 正则表达式, 通过字典的样式, key为待替换, value为替换成, 进行一次替换即可. 代码 # -*- coding: utf-8 -*- import re my_str = "(condition1) and --condition2--" print my_str.replace("condition1", "").replace("condition2

javascript的replace之正则表达式的浅析

在javascript中,字符串的replace方法可以指定替换某些字符串. 1.直接替换字符串 "yy/MM/dd".replace("yy","2017");//替换后,原字符串变为2017/MM/dd 这是直接指定将原字符串中的yy替换为2017. 2.指定用函数返回值替换原指定字符串 "yy/MM/dd".replace("yy",function(){return "2017"

freeCodeCamp:Search and Replace

使用给定的参数对句子执行一次查找和替换,然后返回新句子. 第一个参数是将要对其执行查找和替换的句子. 第二个参数是将被替换掉的单词(替换前的单词). 第三个参数用于替换第二个参数(替换后的单词). 注意:替换时保持原单词的大小写.例如,如果你想用单词 "dog" 替换单词 "Book" ,你应该替换成 "Dog". function myReplace(str, before, after) { var newStr = ""

Search and Replace

function myReplace(str, before, after) { //return str; if(before[0] === before[0].toUpperCase()){ after = after[0].toUpperCase() + after.slice(1); } str = str.replace(before,after); return str; } myReplace("A quick brown fox jumped over the lazy dog&

【LABVIEW到C#】4》String的操作之Search and Replace.vi

C#封装如下: public class SearchAndRepalce : Darrenstring { public bool replaced; private string stringout; public SearchAndRepalce() { } public string searchandreplace(string inputstring, string searchstring, string replacestring, bool replaceall) { if (

js正则表达式/replace替换变量方法

转自:http://www.blogjava.net/pingpang/archive/2012/08/12/385342.html 1. javascript 正则对象替换创建和用法:/pattern/flags 先简单案例学习认识下replace能干什么: 正则表达式构造函数: new RegExp("pattern"[,"flags"]); 正则表达式替换变量函数:stringObj.replace(RegExp,replace Text);参数说明:patt

JavaScript基础学习--正则表达式

定义:正则表达式(英语:Regular Expression,在代码中常简写为regex.regexp或RE)使用单个字符串来描述.匹配一系列符合某个句法规则的字符串搜索模式. 正则表达式可用于所有文本搜索和文本替换的操作. 语法: /pattern/modifiers; eg: var patt = /w3cschool/i 实例解析: /w3cschool/i  是一个正则表达式. w3cschool  是一个模式 (用于检索). i  是一个修饰符 (搜索不区分大小写). 使用字符串方法