私は単純なTCL -nocaseフラグを使用しています。しかし、私がそのコードを実行している1つのシステムでは、まだTCL 8.4が使用されていますが、nocaseは利用できません。単純な回避策はありますか、または手動でこれを処理する必要がありますか?TCL 8.4 lsort -nocaseオプションを持たないための回避策?
0
A
答えて
3
TCL 8.4には大文字小文字を区別しない比較を提供する-dictionaryフラグがあります。あなたの文字列に数字が入っていなければ、その動作は-nocaseフラグと同じだと思います。ドキュメントから
:
-dictionary 使用辞書スタイルの比較。これは、(a)タイブレーカー以外のケースが無視され、(b)2つの文字列に埋め込み番号が含まれる場合、数字は文字ではなく整数として比較される点を除いて、-asciiと同じです。例えば、bigBoyはbigbangとbigboyの間をソートし、x10yはx9yとx11yのソートを行います。
-nocase 大文字と小文字を区別しない方法で比較されます。 -dictionary、-integer、または-realオプションと組み合わせても効果はありません。
2
ここで変換シュワルツです:
proc nocaseCompare {a b} {
set a [string tolower $a]
set b [string tolower $b]
if {$a < $b} {
return -1
} elseif {$a > $b} {
return 1
} else {
return 0
}
}
set lst {This is a Mixed Case sentence and this is the End}
puts [lsort -command nocaseCompare $lst]
出力:
set lst {This is a Mixed Case sentence and this is the End}
set tmp [list]
foreach word $lst {lappend tmp [list $word [string tolower $word]]}
unset lst
foreach pair [lsort -index 1 $tmp] {lappend lst [lindex $pair 0]}
puts $lst
出力
a and Case End is is Mixed sentence the This this
+0
それに感謝します。非常にエレガント。 – TrojanName
1
関連する問題
- 1. ソートのためのtcl progamが必要です(lsortなし)
- 2. iPhoneレスポンシブルデザインバグのためのCSS回避策
- 3. ECMAScript5の新機能のためのポリフィルまたは回避策?
- 4. C++インターフェイスを実装するためのC++/CLIの回避策
- 5. `AnyObject.Type`を` Equatable`に適合させるための回避策?
- 6. どこでもspark implicitsをインポートするための回避策
- 7. Phonegap 1.7.0 Webview URLを開くための回避策
- 8. 非同期をブロックするための回避策?
- 9. ブロックされたiframeの回避策
- 10. ネストされたフォームの回避策
- 11. Firefoxのwindow.eventの不足のための回避策?
- 12. Googleの資金調達のためのPandas DataReaderの回避策
- 13. デザインモードプリプロセッサディレクティブ回避策
- 14. 回避策
- 15. JMenuItem.getRootPane()回避策?
- 16. Canvas.toDataURL()回避策?
- 17. ExpressionChangedAfterItHasBeenCheckedError回避策
- 18. ブートストラップデータターゲットバグ回避策
- 19. 回避策
- 20. 回避策StackOverflowException
- 21. 再コールできないための回避策はありますか?
- 22. バッチパラメータの回避策%
- 23. Firebase runloop(3.0.0)の文字列の回避策の回避策
- 24. 部分インデックスまたはフィルタされたインデックスのためのmysqlの回避策?
- 25. Go select文の優先順位回避策回避策
- 26. グラフのデータラベルを回転させるためのPython PPTX回避策
- 27. 回避策Firefoxアップデートアドオン
- 28. python scroll回避策
- 29. WPFアンチエイリアス回避策
- 30. align = "center"回避策
ありがとうございました!おそらく数字は整数として扱われますが、それは理想的ではありません。しかし誰かが答えを出すのを待つつもりです。 – TrojanName