我想排序字符串中的字符。如何對字符串中的字符進行排序?
E.g.
echo cba | sort-command
abc
是否有一個命令,讓我這樣做,否則我將不得不編寫一個腳本awk
遍歷字符串和排序呢?
我想排序字符串中的字符。如何對字符串中的字符進行排序?
E.g.
echo cba | sort-command
abc
是否有一個命令,讓我這樣做,否則我將不得不編寫一個腳本awk
遍歷字符串和排序呢?
echo cba | grep -o . | sort |tr -d "\n"
這是作弊(因爲它使用Perl),但工程。 :-P
echo cba | perl -pe 'chomp; $_ = join "", sort split //'
請查找以下有用的方法:
殼牌
排序基於字符串的劇中人物:
echo cba | grep -o . | sort | tr -d "\n"
字符串用空格分隔:
echo 'dd aa cc bb' | tr " " "\n" | sort | tr "\n" " "
的Perl
print (join 「」, sort split //,$_)
紅寶石
ruby -e 'puts "dd aa cc bb".split(/\s+/).sort'
猛砸
使用bash,你必須從一個字符串枚舉的每個字符,一般是這樣的:
str="dd aa cc bb";
for ((i = 0; i < ${#str[@]}; i++)); do echo 「${str[$i]}」; done
對於排序數組,請檢查:How to sort an array in bash?
另一個perl
一個班輪
$ echo cba | perl -F -lane 'print sort @F'
abc
$ # for reverse order
$ echo xyz | perl -F -lane 'print reverse sort @F'
zyx
$ # or
$ echo xyz | perl -F -lane 'print sort {$b cmp $a} @F'
zyx
-l
選項
@F
陣列@F
印刷
這也將工作對於給定的輸入文件
$ cat ip.txt
idea
cold
spare
umbrella
$ perl -F -lane 'print sort @F' ip.txt
adei
cdlo
aeprs
abellmru
或Ruby線明智;) '回波CBA | ruby -e'放入ARGF.read.split(%r {\ s *})。sort.join'' – 2010-03-03 18:58:49