ユニコードの単語列を取得する[.NET]
以下は、そのような「くん」単語として抽出されたUnicode文字列を比較するために取らGetByteCount BIG5エンコーディングUTF8エンコーディングを使用することです。
C#の
公共の静的な文字列CheckHasUnicodeWord(文字列vstrWord)
{
StringBuilderのstrbResult =新しいStringBuilderの();
int型私= 0;
System.Text.Encoding encBig5 = System.Text.Encoding.GetEncoding(950)。
System.Text.Encoding encUtf8 = System.Text.Encoding.UTF8。
int型iBig5ByteCnt = 0;
int型iUtf8ByteCnt = 0;
用(i = 0; iは<vstrWord.Length; iは++)
{
iBig5ByteCnt = encBig5.GetByteCount(vstrWord.Substring(I、1))。
iUtf8ByteCnt = encUtf8.GetByteCount(vstrWord.Substring(I、1))。
IF((iBig5ByteCnt == 1 && iUtf8ByteCntの== 3)||(iBig5ByteCnt == 1 && iUtf8ByteCnt == 2))
{
strbResult.Append(vstrWord.Substring(I、1))。
}
}
strbResult.ToStringを返します();
}
MessageBox.Show(CheckHasUnicodeWord(「これは、Unicodeです!!ああくんカイ」)); //はくんカイを返します
VB.NET
文字列などの公共の共有機能CheckHasUnicodeWord(文字列としてByVal vstrWord)
新しいSystem.Text.StringBuilderとしてstrbResult薄暗いです
私は整数として薄暗いです
(950)System.Text.Encoding = System.Text.Encoding.GetEncodingようencBig5暗く
System.Text.Encoding = System.Text.Encoding.UTF8としてencUtf8薄暗いです
整数としてiBig5ByteCnt、iUtf8ByteCntを暗く
レン(vstrWord)に対するI = 1
iBig5ByteCnt = encBig5.GetByteCount(ミッド(vstrWord、I、1))
iUtf8ByteCnt = encUtf8.GetByteCount(ミッド(vstrWord、I、1))
IF(iBig5ByteCnt = 1、iUtf8ByteCnt = 3)又は(iBig5ByteCnt = 1、iUtf8ByteCnt = 2)そして
strbResult.Append(ミッド(vstrWord、I、1))
場合終了
次
リターンstrbResult.ToString
エンド機能
MessageBox.Show(CheckHasUnicodeWord(「これは、Unicodeです!!ああくんカイ」))「の戻りくんカイ
オリジナル:大列 [.NET]はユニコードの単語列を取得しました