阅读(4994) (16)

Bash 提取子字符串

2020-06-18 14:36:49 更新

在 Bash 中可以使用多种方法从字符串中提取子串。子串就是包含在其父字符串中的子字符串。

基础语法定义

提取子字符串的命令是 Bash 的内置命令,相比于其他的字符串操作,给予了很大的便利。

语法:

${variable:offset:length}

注:
- variable是目标字符串的变量名称。
- offset位置,指定从何处开始提取字符串。
- length偏移量,指定开始执行的字符范围。

应用示例

从字符串开头提取至指定字符结束

#!/bin/bash


echo "String: welcome to W3Cschool."
str="welcome to W3Cschool."


echo "Total characters in a String: ${#str} "


substr="${str:0:10}"


echo "Substring: $substr"
echo "Total characters in Substring: ${#substr} "

执行后得到以下结果:

String: welcome to W3Cschool.
Total characters in a String:21
Substring: welcome to
Total characters in Substring:10

从指定字符开始提取至结尾结束

#!/bin/bash


str="welcome to W3Cschool."
substr="${str:12}"
echo "$substr"

执行后得到以下结果:

3Cschool.