用户名:  密码:   
您当前的位置:首页 > 

Notepad++正则表达式

上次修改时间: 2023-08-16 09:20:18      来源:网络总结      作者:钢铁长陈
上一页      路径:DSD\Learn\各种编辑器相关\      下一页

Notepad++正则表达式

1. 基本语法示例
to_date(.+?)\) //匹配以to_date开头以右括号)结尾的字串,这里用\用括号进行了转义
^[0-9]+$ //匹配都是数字的行,^匹配行首,$匹配行尾
^[A-Za-z]+$ //匹配都是大小写字母的行
aa|bb|cc //匹配包含aa,bb,cc的行

2. 贪婪与非贪婪模式
(.+) //尽可能匹配最长符合规则的字串
(.+?) //尽可能匹配符合规则的最短字串

3. 应用举例
Translate(.+?)\, //非贪婪模式匹配以Translate开头,以逗号,结尾的串,这里的,用\进行了转义
将以ctaa开头,以右括号)结尾的字串去掉右括号
将ctaa(.*)(\))替换为ctaa\1  //这里的\1表第一个括号里的内容

其它示例
行首空格和空行去除:"^\s+" -> ""
行首插入ABCD:"^" -> "ABCD"
行尾空格和空行去除: "\s+$" -> ""
行尾插入ABCD: "$" -> "ABCD"
按头AB,尾CD去除内容(单行非贪婪):"AB.+?CD" 或 "AB.*?CD" -> ""
按头AB,尾CD去除内容(单行贪婪):"AB.+CD" 或 "AB.*CD" -> ""
按头AB,尾CD去除内容(多行非贪婪): "AB[\W\w]+?CD" 或 "AB[\W\w]*?CD" -> ""
按头AB,尾CD去除内容(多行贪婪): "AB[\W\w]+CD" 或 "AB[\W\w]*CD" -> ""
按头AB,尾CD精确匹配去除内部内容(多行非贪婪,前置不能有*,?,+): "(?<=(AB)).*?(?=(CD))" -> ""
按头AB,尾CD模糊匹配,精确匹配内部内容并去除(单行非贪婪): "((?!.*AB))1234((?!CD))" -> ""
按头<, 尾>去除内部内容(多行非贪婪): "(?<=(<))[^>]*" -> ""
增加行:"\r\n" -> "\r\n\r\n"
缩减行:"\r\n\r\n" -> "\r\n"
多行转一行:"\r\n" -> ""
按ABCD分割符换行:"ABCD" -> "\r\n"
按非ABCD开头换行:"^(?!ABCD)" -> "\r\n"
AB列CD列快速互换:"(AB)\t(CD)" ->"$2\t$1"