曲径通幽论坛

标题: 统计一个字符串中各个重复字符的个数 [打印本页]

作者: beyes    时间: 2012-3-24 15:04
标题: 统计一个字符串中各个重复字符的个数
统计一个字符串中各个重复字符的个数的一个方法如下:
# echo "akoqaaboooozkk" | sed 's/[^\n]/&\n/g' | sed '/^$/d' | sort | uniq -c
      3 a
      1 b
      3 k
      5 o
      1 q
      1 z
上面,sed 命令中 [^\n] 表示不匹配换行符的单个字符,因此 sed 在扫描该行时会在非换行符的字符后添加上一个换行符,这样输出时就是每个字符作为一行输出。其中 & 符号代表前面的匹配部分。
还可以进一步写成:
# echo "akoqaaboooozkk" | sed 's/[^\n]/&\n/g' | sed '/^$/d' | sort | uniq -c | tr -d ' \n'
3a1b3k5o1q1z
上面所涉及的命令含义可参考:http://www.groad.net/bbs/read.php?tid-6708-ds-1.html




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2