欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

UltraEdit正則表達(dá)式介紹及實(shí)例分享

  發(fā)布時(shí)間:2012-10-28 20:34:24   作者:佚名   我要評(píng)論
下面是對(duì)UltraEdit的Help中針對(duì)查找替換使用正則表達(dá)式部分的整理,最后還有我前兩天用到的一個(gè)多行代碼查找替換的例子

前幾天,有個(gè)將Excel中的數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫中的需求,原本想到用程序讀取Excel中的數(shù)據(jù)并存儲(chǔ)到數(shù)據(jù)庫中,但經(jīng)一哥們的提醒,說用 EditPlus或UltraEdit這樣的工具直接將數(shù)據(jù)拼湊成SQL插入語句更容易方便,也不用寫任何代碼,由于我本人使用UltraEdit,故考 慮用UltraEdit的正則表達(dá)式來做這件事,下面是這樣的一個(gè)過程。

假設(shè)導(dǎo)入的表字段為:name,email, introduce,在Excel中的數(shù)據(jù)對(duì)應(yīng)的也是這樣的字段,值得注意的是:在excel中的數(shù)據(jù),比如introduce不能換行,不然的話語句拼湊后會(huì)執(zhí)行會(huì)出錯(cuò)。

要拼湊的例子數(shù)據(jù)如下(從Excel中拷貝并粘貼到UltraEdit中):

張三                            zhangsan@zihou.com              "坐于2004年5月經(jīng)教育部批準(zhǔn)升格為普通本科院校。  "  李四                   lisi@zihou.com                           最專業(yè)的圖文視頻體育賽事直播、報(bào)道和‘專家'點(diǎn)評(píng)。 

各字段值之間以一個(gè)或多個(gè)tab鍵分隔著,操作步驟:

替換按Ctrl+R

1、  先將單引號(hào)、雙引號(hào)之類的字符去掉,這一步不用正則,簡(jiǎn)單替換即可。

2、  去掉空行:用正則%[ ^t]++^p替換為空字符串,另外,還有^p$也可以,不過在替換的時(shí)候,^p$每次只能替換一個(gè)空行。

3、  在每行的最前面增加:insert into test(name,email,introduce)values(‘,在UltraEdit正則中,%是表示行首,如下圖:

4、  替換掉tab鍵

5、  最后在行尾加入’);

OK,大功告成!這樣就拼湊成了正常的SQL插入語句了,感覺是不是很快很容易?

如何學(xué)習(xí)UltraEdit正則用法?可以通過以下兩個(gè)方面:

1、  從網(wǎng)上搜些這方面的介紹資料

2、  通過UltraEdit的幫助文檔來進(jìn)行學(xué)習(xí)

UltraEdit的幫助文檔有兩方面,一方面是其chm格式的文檔、另一方面是其官網(wǎng)的文檔。

官網(wǎng)的文檔進(jìn)入方式為:菜單幫助->快速入門指南,在打開的窗口中,點(diǎn)擊任一鏈接都會(huì)到其官網(wǎng)幫助文檔頁面,當(dāng)然了,如果你到這里了,也可以直接點(diǎn)擊下面的鏈接:

http://www.ultraedit.com/support/tutorials_power_tips/ultraedit.html

chm格式的文檔進(jìn)入方式為:

菜單幫助->使用幫助,或幫助->索引均可,如下圖:

在左側(cè)輸入“正則表達(dá)式”進(jìn)行查找,就會(huì)彈出右側(cè)的窗口,看到有很多的使用介紹吧?你可以選擇感興趣的進(jìn)去。

下面是從UltraEdit文檔中摘錄的語法說明

正則表達(dá)式 (UltraEdit 語法):

符號(hào) 功能
% 匹配行首 – 表示搜索字符串必須在行首,但不包括任何選定的結(jié)果字符中的行終止字符。
$ 匹配行尾 – 表示搜索字符串必須在行尾,但不包括任何選定的結(jié)果字符中的行終止字符。
? 匹配任何除換行符的字符。
* 匹配任何除換行符外所出現(xiàn)的任意數(shù)量的字符。
+ 匹配一個(gè)或多個(gè)前面的字符/表達(dá)式。必須找到至少一個(gè)出現(xiàn)的字符。不匹配重復(fù)的換行符。
++ 0 次或多次匹配前面的字符/表達(dá)式。不匹配重復(fù)的換行符。
^b 匹配一個(gè)分頁符。
^p 匹配一個(gè)換行符 (CR/LF) (段落) (DOS 文件)
^r 匹配一個(gè)換行符 (僅 CR) (段落) (MAC 文件)
^n 匹配一個(gè)換行符 (僅 LF) (段落) (UNIX 文件)
^t 匹配一個(gè)制表符
[ ] 匹配任何括號(hào)中的單個(gè)字符或范圍
^{A^}^{B^} 匹配表達(dá)式 A 或 B
^ 忽略其后的正則表達(dá)式字符
^(*^) 在表達(dá)式加上括號(hào)或標(biāo)簽在替換命令中使用。正則表達(dá)式中可以有 9 個(gè)表達(dá)式標(biāo)簽,數(shù)字根據(jù)它們?cè)谡齽t表達(dá)式中的次序確定數(shù)字。

相應(yīng)的替換表達(dá)式是 ^x,x 的范圍是 1-9。例如: 如果 ^(h*o^) ^(f*s^) 匹配“hello folks”,那么^2 ^1 表示將用“folks hello”替換它。

注意 – ^ 這里涉及的字符“^”不是控制鍵 + 值。

例如:

m?n 匹配“man”、“men”、“min”,但不匹配“moon”。

t*t 匹配“test”、“tonight”和“tea time”中的“tea t”部分,但不匹配“tea

time” (“tea ”和“time”之間有換行)。

Te+st 匹配“test”、“teest”、“teeeest”等,但不匹配“tst”。

[aeiou] 匹配每個(gè)元音小寫字母

[,.?] 匹配文字“,”、“.”或“?”。

[0-9a-z] 匹配任何數(shù)字或小寫字母

[~0-9] 匹配除數(shù)字外的任何字符 (~ 表示不匹配其后的內(nèi)容)

你可以搜索象下面一樣的表達(dá)式 A 或 B:

“^{John^}^{Tom^}

這將搜索 John 或 Tom。在兩個(gè)表達(dá)式之間應(yīng)該沒有任何其它內(nèi)容。

你可以在同一次搜索象下面一樣組合 A 或 B 和 C 或 D:

“^{John^}^{Tom^} ^{Smith^}^{Jones^}”

這將搜索后面跟隨了 Smith 或 Jones 的 John 或 Tom。

下面的表顯示“Unix”樣式的正則表達(dá)式語法。

正則表達(dá)式 (Unix 語法):

符號(hào) 功能
\ 表示下一個(gè)字符有特殊含義。“n”表示匹配字符“n”,“\n”匹配一換行符。看下面的例子 (\d、\f、\n 等)。
^ 匹配/停駐行首。
$ 匹配/停駐行尾。
* 匹配前面的字符 0 次或多次。
+ 匹配前面的字符一次或多次。不匹配重復(fù)的換行符。
. 匹配任何除換行符之外的單個(gè)字符。不匹配重復(fù)的換行符。
(表達(dá)式) 在表達(dá)式加上括號(hào)或標(biāo)簽在替換命令中使用。正則表達(dá)式中可以有 9 個(gè)表達(dá)式標(biāo)簽,數(shù)字根據(jù)它們?cè)谡齽t表達(dá)式中的次序確定數(shù)字。

相應(yīng)的替換表達(dá)式是 ^x,x 的范圍是 1-9。例如: 如果 ^(h*o^) ^(f*s^) 匹配“hello folks”,那么^2 ^1 表示將用“folks hello”替換它。

[xyz] 字符集,匹配任何括號(hào)間的字符。.
[^xyz] 排除字符集。匹配任何不在括號(hào)間的字符。
\d 匹配一個(gè)數(shù)字字符。等同于 [0-9]。
\D 匹配一個(gè)非數(shù)字字符,等同于 [^0-9]。
\f 匹配一個(gè)換頁符。
\n 匹配一個(gè)換行符。
\r 匹配一個(gè)回車符。
\s 匹配任何包含空格、制表符等不會(huì)顯示的字符,但不匹配換行符。
\S 匹配任何非空白區(qū)域 (顯示字符) 的字符,但不匹配換行符。
\t 匹配一個(gè)制表符。
\v 匹配一個(gè)垂直制表符。
\w 匹配任何包含下劃線的詞語。
\W 匹配任何非詞語的字符。
\p 匹配 CR/LF (等同于 \r\n),用來匹配 DOS 行終止符。

注意 – ^ 這里所涉及的字符“^”不是控制鍵 + 值。

例如:

m.n 匹配“man”、“men”、“min”,但不匹配“moon”。

Te+st 匹配“test”、“teest”、“teeeest”等,但不匹配“tst”。

Te*st 匹配“test”、“teest”、“teeeest”等,還有“tst”。

[aeiou] 匹配每個(gè)元音小寫字母

[,.?] 匹配文字“,”、“.”或“?”。

[0-9a-z] 匹配任何數(shù)字或小寫字母

[^0-9] 匹配除數(shù)字外的任何字符 (~ 表示不匹配其后的內(nèi)容)

你可以象下面一樣的表達(dá)式 A 或 B 進(jìn)行搜索:

“(John|Tom)”

這將搜索 John 或 Tom。在兩個(gè)表達(dá)式之間應(yīng)該沒有任何其它內(nèi)容。

你可以在同一次搜索象下面一樣組合 A 或 B 和 C 或 D:

“(John|Tom) (Smith|Jones)”

這將搜索 Smith 或 Jones 以及跟隨在后面的 John 或 Tom。

如果在查找/替換中沒有選擇使用正則表達(dá)式,在替換對(duì)象中下列特殊字符同樣有效:

符號(hào) 功能
^^ 匹配字符“^”
^s 表示活動(dòng)文件窗口中選定 (加亮) 的文字。
^c 表示剪貼表的內(nèi)容。
^b 匹配一個(gè)分頁符。
^p 匹配一個(gè)換行符 (CR/LF) (段落) (DOS 文件)
^r 匹配一個(gè)換行符 (僅 CR) (段落) (MAC 文件)
^n 匹配一個(gè)換行符 (僅 LF) (段落) (UNIX 文件)
^t 匹配一個(gè)制表符

注意 – ^ 這里所涉及的字符“^”不是控制鍵 + 值。

相關(guān)文章

  • 解決UltraEdit在UTF-8編碼下的亂碼問題

    最近寫幾個(gè)自定義的xml配置文件,開頭如此:,結(jié)果保存后的文件再使用UE打開時(shí)中文內(nèi)容便成了亂碼,甚是郁悶
    2012-03-12
  • UltraEdit+刪除空行的正則表達(dá)式

    用UltraEdit+正則表達(dá)式刪除空行的方法,需要的朋友可以參考下。
    2011-01-03
  • UltraEdit技巧總結(jié)

    查找操作 1.ctrl+b 寫程序的時(shí)候,括號(hào)一般要一一對(duì)應(yīng)的,但是如果嵌套太多,看花眼了,怎么辦?你把光標(biāo)放在括號(hào)開始的地方,按ctrl+b,UE 會(huì)幫你找到相對(duì)應(yīng)的括號(hào)結(jié)尾的
    2009-08-27
  • 在UltraEdit中使用正則表達(dá)式

    很多朋友都用過或者正在用UltraEdit,這個(gè)編輯器陪伴我也好幾年了,從很多地方影響著我寫代碼的快捷鍵習(xí)慣,Ultraedit提供了非常豐富的編輯功能,其中非常重要的查找和替換
    2012-10-28
  • UltraEdit高級(jí)使用技巧分享

    UltraEdit是眾多IDE中頗有亮點(diǎn)的一款,它功能強(qiáng)大,這里說一下它的一些很好用的功能
    2012-05-03
  • UltraEdit使用技巧之常用快捷鍵大全

    UltraEdit是一套功能強(qiáng)大的文本編輯器,可以編輯文本、十六進(jìn)制、ASCII碼,可以取代記事本等等,功能很多,下面我們來看看UltraEdit常用快捷鍵有哪些
    2014-10-24
  • ue編輯器怎么用?ultraedit文本編輯器使用方法

    ue編輯器怎么用?想知道的朋友就和小編一起來看看ultraedit文本編輯器使用方法吧
    2014-10-24

最新評(píng)論