目標 : 把原本的特訂字串變成大寫
輸入範例 :
#define ChipEndAddr_L 0x0197
#define PAGE0 0x0198
希望得到的輸出 :
#define CHIPENDADDR_L 0x0197
#define PAGE0 0x0198
命令如下
%s/#define\s\+\([a-zA-Z0-9_]\+\)/#define\ \U\1/g
解釋
%s 指要搜尋取代的範圍是整個檔案
搜尋的字串以 #define 起頭
接著\s\+ 代表的是 \s 泛指空白的字元例如 tab, space, \+ 指的是出現至少一次
接著出現 用 \( 以及\) 包裹住的代表之後可以存入變數的字串
被\( ... \) 包圍住的是 [a-zA-Z0-9_]\+ 也就是a 到 z, A 到 Z, 0 到 9, 還有底線隨便的字元組合
接著用 / 之後是指要替換的字串, #define 加一個空白
接著 \U 代表的是把之前找到的 \( ... \) 包圍的字串改成大寫, 這個字串用 \1 代表
如果之前在尋找的規則中有兩個以上的 \( ... \) 那數字代碼就是遞增 例如 \2
/g 代表的就是不只替代一行
訂閱:
張貼留言 (Atom)
Python TypeError: 'module' object is not callable
程式碼其實相當簡單 import random random.random() 那問題出在哪?出在當初的檔名取名為 random.py 結果造成 Python 在 import 的時候造成問題。所以在取名Python 的檔名時,切記不要取成跟 Default Module...
-
程式碼其實相當簡單 import random random.random() 那問題出在哪?出在當初的檔名取名為 random.py 結果造成 Python 在 import 的時候造成問題。所以在取名Python 的檔名時,切記不要取成跟 Default Module...
-
情境 原先架構在 MS 的 Access 所以會有 mdb 檔案, 在 Access 裡頭可以看到一些既存的 Query 點 Design View 之後再去視窗上方按右鍵可以看到 SQL View 困境 把這樣的一串 SQL 丟到轉好的 phpMySQL 去執行是會...
-
The key variable is $? Example code : #!/bin/bash ./execute_some_script.sh if (( $? == 0 )) then echo "the script...
沒有留言:
張貼留言