【发布时间】:2016-01-10 22:13:09
【问题描述】:
我有一个这样的变量集:
sentence="a very long sentence with multiple spaces"
我需要在不使用 wc 等其他程序的情况下计算有多少单词和字符。
我知道数单词可以这样完成:
words=( $sentence )
echo ${#words[@]}
但是我如何计算包括空格在内的字符呢?
【问题讨论】:
标签: bash
我有一个这样的变量集:
sentence="a very long sentence with multiple spaces"
我需要在不使用 wc 等其他程序的情况下计算有多少单词和字符。
我知道数单词可以这样完成:
words=( $sentence )
echo ${#words[@]}
但是我如何计算包括空格在内的字符呢?
【问题讨论】:
标签: bash
但是我如何计算包括空格在内的字符呢?
计算字符串使用的长度:
echo "${#sentence}"
47
【讨论】:
您还可以将grep 与匹配所有内容的正则表达式一起使用:
echo "this string" | grep -oP . | grep -c .
【讨论】:
在一行中使用awk:
echo this string | awk '{print length}'
另一种将标准输入文本传送到awk的方法:
awk '{print length}' <<< "this string"
【讨论】: