StringExtension
1.0.3 (2018
C# / VB で文字列をバイト単位で操作するためのメソッド (MidB, LenB など) をまとめたクラスです。半角文字を長さ 1 バイト、全角文字を長さ 2 バイトとして扱います。
拡張メソッドとして実装しているので、コードの可読性が上がります。メソッド チェーンとしてコードを記述することができます。
あらかじめ、using ディレクティブでこの拡張メソッドを使用できるようにする必要があります。
using StringExtension;メソッドの呼び出しは以下のようにします。
string text = "半角1バイト/全角2バイト";
Console.WriteLine($"text のバイト数は {text.LenB()}"); // 出力: "text のバイト数は 23"
Console.WriteLine(text.MidB(3, 7)); // 出力: "1バイト"
Console.WriteLine(text.LeftB(5)); // 出力: "半角1"
Console.WriteLine(text.RightB(11)); // 出力: "全角2バイト"メソッド チェーンを用いた場合。
Console.WriteLine(text.MidB(3, 7).LenB().ToString()); // 出力: "7"あらかじめ、Imports ステートメントでこの拡張メソッドを使用できるようにする必要があります。
Imports StringExtensionメソッドの呼び出しは以下のようにします。
Dim text As String = "半角1バイト/全角2バイト"
Console.WriteLine($"text のバイト数は {text.LenB()}") ' 出力: "text のバイト数は 23"
Console.WriteLine(text.MidB(3, 7)) ' 出力: "1バイト"
Console.WriteLine(text.LeftB(5)) ' 出力: "半角1"
Console.WriteLine(text.RightB(11)) ' 出力: "全角2バイト"メソッド チェーンを用いた場合。
Console.WriteLine(text.MidB(3, 7).LenB().ToString()) ' 出力: "7"StringExtension.cs または StringExtension.vb を取り出し、使用するプロジェクトに追加します。StringExtension.dll と StringExtension.xml を使用するプロジェクトの参照に追加します。projects フォルダ
StringExtension.sln: C# で実装したソリューション。StringExtensionVB.sln: VB で実装したソリューション。ただし、テスト コードは C# のもの。src フォルダ
test フォルダ
MIT ライセンスで公開しています。