在 Bash 中轉換字串的字母大小寫
Nilesh Katuwal
2023年1月30日
Bash
Bash String
-
在 Bash 中使用
tr轉換字串的字母大小寫 - 使用內建 Bash 4 功能轉換字串的字母大小寫
-
在 Bash 中使用
awk轉換字串的字母大小寫 -
在 Bash 中使用
sed轉換字串的字母大小寫
在 bash 命令中,字串資料用於各種功能。
我們有時需要修改字串大小寫來獲得想要的結果。可以轉換大小寫字串。
在 Bash 中使用 tr 轉換字串的字母大小寫
在以前的 bash 版本中,字串資料是使用 tr 命令翻譯的。術語:upper 用於大寫字母,而關鍵字:lower 用於小寫字元。
讓我們看一個例子。
echo "Changing All to LOWERCASE" | tr [:upper:] [:lower:]
輸出:
changing all to lowercase
如果我們改變:upper:和:lower:的位置為:
echo "Changing All to UPPERCASE" | tr [:lower:] [:upper:]
輸出將是:
CHANGING ALL TO UPPERCASE
我們必須在後面加上 :lower: 才能將字串轉換為小寫,反之亦然。
使用內建 Bash 4 功能轉換字串的字母大小寫
使用 Bash 4 的新功能,你可以更輕鬆地轉換字串大小寫。
^ 符號將任何字串的第一個字元轉換為大寫,而^^ 符號將整個字串轉換為大寫。 , 符號用於小寫初始字元,而 ,, 符號用於小寫整個字串。
例如,讓我們宣告本節示例中使用的變數。
$ var="Example String."
我們想讓變數 var 中的所有字母都大寫。
$ echo "${var^^}"
輸出:
EXAMPLE STRING.
或者也許我們想把第一個字母變成小寫。
$ echo "${var,}"
輸出:
example String.
現在,讓我們通過選擇它並首先將字串中的 i 字元更改為大寫來更改字元的字母大小寫。
$ echo "${var^^i}"
輸出:
Example StrIng.
讓我們對兩個字元 r 和 i 做同樣的事情,並將它們轉換為大寫。
$ echo "${var^^[r,i]}"
輸出:
Example StRIng.
使用 ,, 代替^^ 轉換為小寫。
在 Bash 中使用 awk 轉換字串的字母大小寫
再次,
$ var="Example String."
要將所有字串轉換為小寫,我們使用 awk 的 tolower() 方法。它還有一個 toupper() 函式將所有字串轉換為大寫。
$x 指的是當前記錄的欄位。 $0 是指整個記錄的特殊情況。
$ echo "$var" | awk '{print tolower($0)}'
輸出:
example string.
要將所有字串轉換為大寫:
$ echo "$var" | awk '{print toupper($0)}'
輸出:
EXAMPLE STRING.
在 Bash 中使用 sed 轉換字串的字母大小寫
sed 指令碼由替換命令組成。替代命令是 s/old/new/,它在文字中搜尋與正規表示式 old 匹配的內容並將其替換為 new。
再次,
$ var="Example String."
s/.*/\L&/ 匹配輸入中的任何字元並將其替換為相同字元的小寫版本。
$ echo "$var" | sed 's/.*/\L&/'
輸出:
example string.
Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe