[請問] Notepad++ 中使用正規表述式大量修改內文

看板EZsoft (小軟體)作者 (Yukie)時間16年前 (2009/09/12 11:48), 編輯推噓3(306)
留言9則, 3人參與, 最新討論串1/2 (看更多)
手上有一些 HTML 檔案內容如下: <span class="green">一堆被標為綠色的文字</span> <span class="yellow">一堆被標為黃色的文字</span> <span class="green">一堆被標為綠色的文字</span> <span class="yellow">一堆被標為黃色的文字</span> <span class="green">一堆被標為綠色的文字</span> <span class="yellow">一堆被標為黃色的文字</span> 現在希望將綠色文字部份刪除。 我試著在 Notepad++ 中用正規表述式(Regular Expression) 將過程簡化: 搜尋:<span class="green">.*</span> 取代為: 結果, 我是笨蛋!! 整篇文章都不見了, 因為這樣的表述式會找到第一個 <span class=""green"> 與最後一個 </span>,並將之中的所有文字全部刪除。 請問我應該怎麼做才能比較快的將綠色部份刪除呢? 謝謝您的指導! -- 我的教學部落格:http://edumeme.blogspot.com/ 實習路上:http://edumeme.blogspot.com/2009/08/preteacher.html 教學反思:http://tinyurl.com/RethinkOfTeaching 我在 Youtube 上的影片: http://tw.youtube.com/user/YukieChen -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.128.162.187 ※ 編輯: Yukie 來自: 140.128.162.187 (09/12 11:53)

09/12 12:38, , 1F
sanbis 的回文我看不懂。建議你把 * 換成 + 就好了。
09/12 12:38, 1F

09/12 13:01, , 2F
我試的結果是只有那3行被刪除耶...
09/12 13:01, 2F

09/12 13:07, , 3F
Kenqr: 我知道了,notepad++ 是以『行』為單位,如果有分行
09/12 13:07, 3F

09/12 13:07, , 4F
就可以正確刪除。如果上面六行全都擠成一行,就會出現錯誤。
09/12 13:07, 4F

09/12 13:10, , 5F
全部接成一行的話 <span class="green">[^<]*</span>
09/12 13:10, 5F

09/12 13:11, , 6F
讓中間的文字不能包含<的話就沒問題了
09/12 13:11, 6F

09/13 18:29, , 7F
Kenqr: 測了一下,發現在 notepad++ 中表述式太長會不處理
09/13 18:29, 7F

09/13 18:31, , 8F
所以 RegExp 版的 #19Ffk-p3 方法不適用。
09/13 18:31, 8F

09/13 18:32, , 9F
在 Vim 裡面也是失敗。不過還好用您的方法可以成功!!:d
09/13 18:32, 9F
文章代碼(AID): #1Agnd_WK (EZsoft)
文章代碼(AID): #1Agnd_WK (EZsoft)