經常用到EmEditor來編輯純文本文檔。最近接觸了正則表達式,感受到其功能非常強大。
正則表達式實在包含的內容太多, 僅僅用一篇文章來涵蓋是沒可能的了, 所以我只是簡要的做些介紹和基本的模式應用舉例.
正則表達式, 英文 Regular expression, 簡寫Regexes或Regex.
應用概述: 提供與預期的搜索結果匹配的確切文本來進行字符串的搜索和替換操作, 這種技術不僅僅用于開發領域, 更被集成到一些常見的文本擴展編輯器, 如UltraEdit, Emeditor等. 歷史上第一個實用應用程序是Unix 中的qed 編輯器。
舉一個簡單的類比: 我們對DOS中的通配符"*"和"?"應該很熟悉, 如命令"dir *.exe" 將列出所有后綴名為exe的文件名. 正則表達式提供的方法與其類似, 而且遠比通配符強大的多.
從某種意義上說, 正則表達式是一種語言, 通過及其簡短的一行代碼即可以高效, 精確的描述要匹配的復雜文本, 當然, 它最大的優點也是他最大的缺點: 語法復雜, 創建困難. (熟悉之后就可以忽略后半句了 :p)
主要應用:
數據驗證; 這是正則表達式在開發中最常見的應用, 通過測試字符串內的模式。來驗證輸入的字符串是否為郵政編碼, 電話號碼, 電子郵件地址, 信用卡號碼等等。
搜索和替換文本; 用正則表達式來搜索文檔中的特定文本塊, 根據需要用其他指定的文本塊進行替換。這也是文本編輯中的一個常見應用, 如將網頁中的HTML代碼轉化為UBB代碼.
1. 啟用正則表達式
菜單: Search - Find (Replace) - 選中 Use Regular Expressions
2. Emeditor 正則語法
正則表達式是普通字符和元字符組合的一種模式. 它的結構與算術表達式的結構類似, 各種元字符和運算符可以將小的表達式組合起來,創建大的表達式。通過在一對分隔符之間放置表達式模式的各種組件,就可以構建正則表達式。
2.1 普通字符
普通字符是指除了 ".", "*", "?", "+", "(", ")", "{", "}", "[", "]", "^", "$" 和 "/" 這些特殊字符之外的所有其他字符. 而這些特殊字符也可以通過前面加上"/"前綴而變為普通字符. 比如, 搜索"CCF"即為在文本中匹配所有的"CCF"字符串, 搜索"/[CCF/]"則是在文本中匹配所有的"[CCF]"字符串.
簡而言之, 普通字符即為只匹配自身的字符.
2.2 元字符
元字符不匹配其自身,它用特殊方式來解析從而實現更多的邏輯功能。正則表達式通過元字符在模式中包含選擇和循環
2.2.1 特殊字符
新聞熱點
疑難解答
圖片精選