dok*_*par 6 unix string bash replace
出于格式化目的,我想用空格替换String的所有字符.
STR="some string of unknown length"
SPC=" " <--- this is what I want
Run Code Online (Sandbox Code Playgroud)
在这个页面的帮助下,我能想到的最好的是:
SPC=${STR//[a-Z]/ }
Run Code Online (Sandbox Code Playgroud)
但这只会替换字母,而不是数字或任何特殊字符.这种类型的Bash字符串替换的"任何字符"的占位符是什么?
您可以使用:
str="some string of unknown length"
spc="${str//[^[:space:]]/ }"
Run Code Online (Sandbox Code Playgroud)
[^[:space:]]
将匹配任何非空格字符并用空格替换它.
校验:
echo "$str" | wc -c
30
echo "$spc" | wc -c
30
Run Code Online (Sandbox Code Playgroud)
PS:你也可以这样做:
spc="${str//?/ }"
Run Code Online (Sandbox Code Playgroud)
获取只包含空格的相同长度的字符串.?
匹配glob中的任何字符.
归档时间: |
|
查看次数: |
69 次 |
最近记录: |