• UltraEdit中使用正则表达式


    今天我朋友要吧C写的常量定义(#define MAX 0xFFFF)转成java的常量定义(public static final int MAX=0xFFFF;)由于量比较大,又懒得为了一个文件写java代码去处理,所以决定用UltraEdit的正则表达式的功能去替换。
     
    我朋友这个要求还是挺方便的只要先将#define 替换成 public static final int  然后将0x^(????^)替换为=0x^1; 这样就搞定了,由于UltraEdit的正则表达式和正统的正则表达式还是有很大的区别,所以转篇 UltraEdit正则表达式文档。
    UltraEdit 正则表达式 (UltraEdit Syntax)

    符号

    功能

    %

    匹配行首 – 表示搜索字符串必须在行首,但不包括任何选定的结果字符中的行终止字符。

    $

    匹配行尾 – 表示搜索字符串必须在行尾,但不包括任何选定的结果字符中的行终止字符。

    ?

    匹配任何除换行符的字符。

    *

    匹配任何除换行符外所出现的任意数量的字符。

    +

    匹配一个或多个前面的字符/表达式。必须找到至少一个出现的字符。不匹配重复的换行符。

    ++

    0 次或多次匹配前面的字符/表达式。不匹配重复的换行符。

    ^b

    匹配一个分页符。

    ^p

    匹配一个换行符 (CR/LF) (段落) (DOS 文件)

    ^r

    匹配一个换行符 (仅 CR) (段落) (MAC 文件)

    ^n

    匹配一个换行符 (仅 LF) (段落) (UNIX 文件)

    ^t

    匹配一个制表符

    [ ]

    匹配任何括号中的单个字符或范围

    ^{A^}^{B^}

    匹配表达式 A 或 B

    ^

    忽略其后的正则表达式字符

    ^(*^)

    在表达式加上括号或标签在替换命令中使用。正则表达式中可以有 9 个表达式标签,数字根据它们在正则表达式中的次序确定数字。

    相应的替换表达式是 ^x,x 的范围是 1-9。例如: 如果 ^(h*o^) ^(f*s^) 匹配”hello folks”,那么^2 ^1 表示将用”folks hello”替换它。


    删除空行: 替换 %[ ^t] ^p 为 空串
    删除行尾空格: 替换 [ ^t] $ 为 空串
    删除行首空格: 替换 %[ ^t] 为 空串
    每行设置为固定的4个空格开头: 替换 %[ ^t] ^([~ ^t^p]^) 为 " ^1"
    每段设置为固定的4个空格开头: 替换 %[ ^t] 为 " "
    (如果一行是以空格开始的,则视之为一段的开始行)
    将一段合并为一行: 替换 [ ^t] ^p^([~ ^t^p]^) 为 ^1
    (注意: 此处假定文本是以DOS方式回车换行 - CR/LF)
    去掉HTML TAG: 替换 ^{<*>^}^{<*^p*>^} 为 空串
    删除HTML中的所有<A>: 替换 <[ ] a *[ ] href[ ] =*> 为 空串
    删除文本中指定的前2列字符: 替换 %?? 为 空串
    在第4列后插入2列空白字符: 替换 %^(????^)^(?^) 为 "^1 ^2"
    查找所有的数字: [0-9] [.] [0-9]
    查找所有的单词: [a-z]
    查找所有的网址: http://[a-z0-9^~`_./^-^?=&]
    注意: 替换的时候需要勾选使用正则表达式选项
  • 相关阅读:
    cocos2d-x Tests讲解 Particle System(粒子系统)
    c++ 知识点
    详解C/C++函数指针声明
    VS中的路径宏 vc++中OutDir、ProjectDir、SolutionDir各种路径
    cocos2d-x学习知识点记录
    Ogre实现简单地形
    Ogre内部渲染流程分析系列
    gcc/g++编译
    gcc和g++的区别
    Hack with rewrite
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152667.html
Copyright © 2020-2023  润新知