【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
字符串切片
基于模式取子串:
- ${var#*delimiter} 删除字符串开头到第一个分隔符之间的所有字符
- ${var##*delimiter} 删除字符串开头到最后一个分隔符之间的所有字符
- ${var%delimiter*} 从最右边向左删除到第一个分隔符之间的所有字符
- ${var%%delimiter*} 从最右边向左删除到最后一个分隔符之间的所有字符
查找替换
- ${var/pattern/substr} 在var表示的字符串中,查找pattern,用substr替换一次
- ${var//pattern/substr} 在var表示的字符串中,查找pattern,用substrw全部替换
- ${var/#pattern/substr} 在var表示的字符串中,查找开头pattern,用substr替换
- ${var/%pattern/substr} 在var表示的字符串中,查找行尾pattern,用substr替换
注意:pattern中使用glob风格的通配符
查找删除
- ${var/pattern} 删除var表示的字符中第一次被pattern匹配到的字符串
- ${var//pattern} 删除var表示的字符中所有被pattern匹配到的字符串
- ${var/#pattern} 删除var表示的字符中行首被pattern匹配到的字符串
- ${var/%pattern} 删除var表示的字符中行尾被pattern匹配到的字符串
字符大小写转换
- ${var^^} 把var中所有的字符串转换为大写
- ${var,,} 把var中所有的字符串转换为小写
变量赋值
- ${var:-VALUE}
- ${var:=VALUE}
- ${var:+VALUE}
- ${var:?ERROR_INFO}
来源:oschina
链接:https://my.oschina.net/u/4270793/blog/3145173