気になった事を自由に書いてます。
      
更新:2011/03/28
StringクラスのTrim( )をちょっと調べてみた。
Trim()でつまずいたのでちょっと調べてみました。
Trim()は文字列の前後の空白を削除してくれる超便利なメソッドです。
今まで半角、全角スペースやタブだけを削除してくれるものだと思っていたのですが
削除するコードは他にもあったのです。

テストコード
1
2
3
4
5
6
7
string str = " test\r\n ";
str = str.Trim();

foreach (char c in str)
{
    Console.Write(string.Format("{0,2}", c));
}

出力
t e s t
MSDNを見ると書いてました。。
『Trim メソッドで削除可能な空白文字を次の表に示します。
1 列目は文字の Unicode 名を、2 列目はその文字に対応する
Unicode コード ポイント (16 進表記) を示しています。』
と書いてあり、削除対象がスペースやタブだけではないことが分かります。

Unicode 名 Unicode
コード ポイント
その他
(エスケープシーケンスなど)
CHARACTER TABULATION U+0009 \t (水平タブ)
LINE FEED U+000A \n (改行)
LINE TABULATION U+000B \v (垂直タブ)
FORM FEED U+000C \f (フォーム フィード)
CARRIAGE RETURN U+000D \r (キャリッジ リターン)
SPACE U+0020  
NO-BREAK SPACE U+00A0  
EN QUAD U+2000  
EM QUAD U+2001  
EN SPACE U+2002  
EM SPACE U+2003  
THREE-PER-EM SPACE U+2004  
FOUR-PER-EM SPACE U+2005  
SIX-PER-EM SPACE U+2006  
FIGURE SPACE U+2007  
PUNCTUATION SPACE U+2008  
THIN SPACE U+2009  
HAIR SPACE U+200A  
ZERO WIDTH SPACE U+200B  
IDEOGRAPHIC SPACE U+3000  
ZERO WIDTH NO-BREAK SPACE U+FEFF  

何となくで組めちゃうC#は怖いですね。
      





Copyright (C) 2011 - 2017 猫の気ままなC#日記