Skip to content

Latest commit

 

History

History
73 lines (49 loc) · 1.4 KB

字符串大小写转换.md

File metadata and controls

73 lines (49 loc) · 1.4 KB

字符串大小写转换

# 将字符串转换为小写
lower() {
# Usage: lower "string"
printf '%s\n' "${1,,}"
}	


# 将字符串转换为大写
upper() {
# Usage: upper "string"
printf '%s\n' "${1^^}"
}

# 反转字符串大小写
reverse_case() {
    # Usage: reverse_case "string"
    printf '%s\n' "${1~~}"
}
----------

bash中的大小写转换:

${PARAMETER^}

${PARAMETER^^}

${PARAMETER,}

${PARAMETER,,}

${PARAMETER~}

${PARAMETER~~}

这些扩展操作符修改参数文本中字母的大小写(以"aaBB Cd"为例)。

  • ^运算符将第一个字符修改为大写;("AaBB Cd")
  • 运算符将第一个字符修改为小写;("aaBB Cd")
  • 使用双重格式(^^,,)时,将转换所有字符;("AABB CD")("aabb cd")
  • 反转字符串中每个单词的第一个字母;("AaBB cd"
  • 同时~~反转所有字符.("AAbb cD")
***对数组的处理*** 对于数组而言,大小写转换作用于每个展开的元素,例如:
定义: array=(This is some Text)

echo "${array[@],}"
⇒ this is some text

echo "${array[@],,}"
⇒ this is some text

echo "${array[@]^}"
⇒ This Is Some Text

echo "${array[@]^^}"
⇒ THIS IS SOME TEXT

echo "${array[2]^^}"
⇒ SOME