在這裡總結一下awk的字串函式。
1. 長度函式length()
2. 分段函式split()
語法如下:
split(input-string, output-array, separator)
split函式將乙個字串分隔到乙個陣列中。它有三個引數,第乙個為輸入字串,也就是要處理的字串;第二個為乙個輸出陣列;第三個為分隔符。
3. 字串抽取函式substr()
語法如下:
substr(input-string, location, length)
substr函式提取給定字串的一部分。它也有三個引數,第乙個為輸入字串;第二個為起始位置;最後乙個維抽取的字串的長度,這個引數是可選的,如果沒有給定的話,就會從起始位置抽取到最後。
4. 替換函式sub()
語法如下:
sub(original-string, replacement-string, string-variable)
該函式實現將某一字串替換為特定字串的功能。第乙個引數為原始字串;第二個引數為替換的字串;第三個引數則為輸入字串,這個變數即作為輸入變數,也作為輸出變數。有一點需要注意,成功替換後,你將找不到原先的字串。乙個簡單的例子如下:
begin
上面是sub.awk的內容,執行了awk -f sub.awk後的輸出為:
good afternoon
5. 匹配函式match()
語法如下:
match(input-string, search-string)
該函式實現在輸入字串中尋找給定字串或者是正規表示式的功能,當成功匹配後返回乙個個正值。第乙個引數代表輸入的字串,第二個引數為需要尋找的字串。
以下例子尋找「morning」在字串str中。如果在str中有"morning"字串,則列印成功資訊。
begin
}
輸出結果為:
morning in good morning
6. 大小寫轉換函式tolower(),toupper()
以上函式均在ubuntu 15.10上進行了驗證。
awk 字串函式
awk 提供了許多強大的字串函式,見下表 awk內建字串函式 gsub r,s 在整個 0中用s 替代r gsub r,s,t 在整個t中用s 替代r index s,t 返回s 中字串 t的第一位置 length s 返回s 長度match s,r 測試s 是否包含匹配 r的字串 split s,...
awk字串函式(二)
substr函式 substr函式返回從字串指定位置開始的乙個子串。如果指定了子串的長度,則返回字串的相應部分。如果指定的長度超出了字串的實際範圍,則返回其實際內容。格式 substr 字串 起始位置 substr 字串 起始位置 子串長度 範例 awk filename claus 說明 在字串 ...
awk內建字串函式
awk內建字串函式 gsub r,s 在整個 0中用s替代 r awk gsub name xingming temp gsub r,s,t 在整個t中用 s替代r index s,t 返回 s中字串 t的第一位置 awk begin temp 返回4 length s 返回 s的長度 match ...