最近、文字コードで色々あった。とりあえず外字。utf-16の文字列内にUnicodeの私用領域の文字が含まれているか調べる正規表現。

public void hoge(string wkStr)
{
	string regexp = @"[\uE000-\uF8FF]";
	if(System.Text.RegularExpressions.Regex.IsMatch(wkStr,reqexp))
	{
	     Console.WriteLine("外字");
	}
}

そーいえば、バイナリエディタで見るとバイトの並びって逆になるのだろうか。いまいち分かってない。 エディタにもよるのかしら。

Bzで見ると「E0 00 F8 FF」⇒「00 E0 FF F8」で見える。