vim 搜尋非一千的倍數 - Linux
By Rosalind
at 2010-01-22T22:29
at 2010-01-22T22:29
Table of Contents
※ 引述《CyberFret ( )》之銘言:
: 假設現在有如下的pattern
: #21308000
: #21517660
: #21527063
: #21537789
: #21621300
: 我想搜尋尾數非"000"的人, 也就是號碼非1000的倍數, 然後把他們號碼的最後3碼
: 變成"000"
這和把所有號碼都變成1000的倍數,邏輯一樣嗎?
還是說有其他條件?
下面的方法假設所有數字皆為5+3個位數
:%s/\(\d\{5\}\)\d\{3\}/\1000/gc
: 我目前的作法是依序執行下列指令
: :%s+[1-9][1-9][1-9]$+000+gc
: :%s+0[1-9][1-9]+000+gc
: :%s+[1-9]0[1-9]+000+gc
: :%s+[1-9][1-9]0+000+gc
: :%s+00[1-9]+000+gc
: :%s+0[1-9]0+000+gc
: :%s+[1-9]00+000+gc
: 有沒有一步到位的方法? 感謝
--
: 假設現在有如下的pattern
: #21308000
: #21517660
: #21527063
: #21537789
: #21621300
: 我想搜尋尾數非"000"的人, 也就是號碼非1000的倍數, 然後把他們號碼的最後3碼
: 變成"000"
這和把所有號碼都變成1000的倍數,邏輯一樣嗎?
還是說有其他條件?
下面的方法假設所有數字皆為5+3個位數
:%s/\(\d\{5\}\)\d\{3\}/\1000/gc
: 我目前的作法是依序執行下列指令
: :%s+[1-9][1-9][1-9]$+000+gc
: :%s+0[1-9][1-9]+000+gc
: :%s+[1-9]0[1-9]+000+gc
: :%s+[1-9][1-9]0+000+gc
: :%s+00[1-9]+000+gc
: :%s+0[1-9]0+000+gc
: :%s+[1-9]00+000+gc
: 有沒有一步到位的方法? 感謝
--
Tags:
Linux
All Comments
Related Posts
CentOS 5.4 x86_64 網路不穩?
By Lucy
at 2010-01-22T21:57
at 2010-01-22T21:57
關於 crontab 如果要跑到秒的話??
By Hazel
at 2010-01-22T20:35
at 2010-01-22T20:35
關於 crontab 如果要跑到秒的話??
By Oliver
at 2010-01-22T18:03
at 2010-01-22T18:03
關於 crontab 如果要跑到秒的話??
By Hardy
at 2010-01-22T17:41
at 2010-01-22T17:41
在Linux環境中建立GRE Tunnel
By Charlotte
at 2010-01-22T14:29
at 2010-01-22T14:29