2013-02-02 30 views
1

我正在使用Notepad++。我有一些項目如下:快速替換記事本++中的字符

001:0> class Item 
002:1> def initialize(id) 
003:2>  @id = id 
004:2> end 

現在反正是有快速去除那些001:0>,002:1>...一個炮打響,讓他們如下:

class Item 
    def initialize(id) 
    @id = id 
    end 

感謝

回答

2

使用Replace對話框,並檢查底部的框Regular Expressions

enter image description here

查找:

^(\d+?:\d+?>)(.*) 

RegexBuddy's說明樹:

  • 選項:^和$匹配在換行符在一行的開頭
  • 斷言位置(字符串 開頭或換行符後)«^»
  • 匹配正則表達式的下方,捕獲其匹配到 反向引用編號1«(\ d +:?\ d +>)»
  • 匹配單個數字0..9
  • 之間一個«\ d +?»和無限的時間,儘可能少的時間, 擴大需要(懶惰)«+»
  • 匹配字符「:」從字面上«:»«?\ d +»
  • 匹配單個數字0..9
  • 在一次和無限次之間,儘可能少的次數, 根據需要擴展(懶惰)«+?»
  • 匹配字符「>」的字面«>»
  • 匹配正則表達式的下方,捕獲其匹配到 反向引用號2«(。*)»
  • 匹配任何單個字符不是一個換行字符«*»
  • 之間的零和無限次,多次地,給 背根據需要(貪婪)«*»

替換:

\2 

這取代了整場比賽與捕獲組2的內容(見上文)

點擊Replace All

enter image description here

注意,對於發現部分正則表達式也將在比賽中號格式00:0>,0000:00>00000000:00000000>等等。如果這對您不適用,請將正則表達式更改爲:

^(\d{3}+:\d>)(.*) 
+0

Woow !!完善。非常感謝:) – DoLoveSky

+0

爲什麼'\ 2'?你可以用(\ d +?:\ d +?>)(。*)'解釋這個嗎? – DoLoveSky

+0

我編輯瞭解釋第一個查找和替換表達式。如果你需要更多,你可以訪問[RegexBuddy網站](http://regexbuddy.com),在那裏你可以找到一個正則表達式教程的鏈接,這個鏈接很不錯(RegexBuddy也是如此,如果你打算使用很多正則表達式和使用Windows)。 –