Myeclipse中使用正则表达式查找替换
今天通过sql server的forXml 和 openXML处理不数据库的数据同步需要从sql server中拷贝select 语句到myeclipse中做进一步操作(有的表字段太多了~写的话容易出错。。)
使用Find : \W*\[([A-Z]*)\]\r\n
Replace : $1 $1,
SELECT TOP 1000 [ID]
,[TSBT]
,[TSSJ]
,[TSNR]
,[TSLX]
,[TSQD]
,[TSDQ]
,[TSR]
,[TSRLXFS]
,[SFCXCF]
,[HFNR]
,[HFSJ]
,[BLXS]
,[SSJGID]
,[DCBGGS]
,[NBYJ]
,[CLZT]
,[BJQK]
,[LYLX]
,[FWLX]
,[CLJG]
,[BLJG]
,[DCBGWJM]
,[SJBB]
,[CJSJ]
,[BJSJ]
,[YWXTBSID]
,[JLZT]
,[SJC]
变成:
SELECT TOP 1000ID ID,TSBT TSBT,TSSJ TSSJ,TSNR TSNR,TSLX TSLX,TSQD TSQD,TSDQ TSDQ,TSR TSR,TSRLXFS TSRLXFS,SFCXCF SFCXCF,HFNR HFNR,HFSJ HFSJ,BLXS BLXS,SSJGID SSJGID,DCBGGS DCBGGS,NBYJ NBYJ,CLZT CLZT,BJQK BJQK,LYLX LYLX,FWLX FWLX,CLJG CLJG,BLJG BLJG,DCBGWJM DCBGWJM,SJBB SJBB,CJSJ CJSJ,BJSJ BJSJ,YWXTBSID YWXTBSID,JLZT JLZT,SJC SJC,
然后处理下头尾和分行,在SHIFT+CTRL+F 一个全字段的select 就出来了~~!~~
--:整理myeclipse中的正则用法 ---
在光标处在查找输入框时使用 "ALT+/" 打开提示:内容。。。很长
^ 行头
略~!~
$ 行尾
在光标处在替换输入框时使用 "ALT+/" 打开提示:内容和下面这段类似
(在查找/替换对话框时使用F1打开的帮助文档。。。)
Supported Regular Expressions
When searching for text you can use the regular expressions as defined by the Pattern class.
Additionally, \R can be used to match any form of line delimiter (Unix, Windows, Mac OS 9). Note that \R does not work in character groups ([]).
The replace string allows the following constructs:
$i inserts capturing group i. 插入捕获分组i 在正则中第一个括号即为第一个捕获分组
如:(abc(def)*) 匹配 abcdefdef 时 第一分组为abcdefdef 第二分组为def 。。。这里还涉及到另一个东西那就是正则表达式总是努力进行最长的匹配;
(abc(def)*)匹配 abcefdef时 第一分组为abc 第二分组为def
\i inserts capturing group i (same as $i). 同上
\x quotes character x (unless \x has a special meaning) ..不知道怎么用
\R inserts the default line delimiter of the document 插入文档的默认行分隔符
\xhh inserts the hexadecimal character hh 插入的十六进制字符
\uhhhh inserts the Unicode character hhhh 插入的Unicode字符HHHH
\n inserts a newline character (usually, you should use \R instead) 插入一个换行符(通常情况下,你应该使用\ r代替)
\r inserts a carriage-return character (usually, you should use \R instead) 插入一个回车字符(通常情况下,你应该使用\ r代替)
\t inserts a tab character 插入一个制表符
\f inserts a form-feed character 插入一个换页符
\a inserts an alert (beep) character inserts an alert (beep) character
\e inserts an escape character 插入一个转义字符
\cC inserts a the control character for C 插入一个控制字符C
\C retains the casing of the match (all lower case, all upper case, capitalized) 也是不知道什么用。。。s