文字列の拡張メソッド String Extensions

今まで貯めてきた文字列の拡張メソッドをこのページにまとめておきます。

拡張メソッドについては以下の記事を参照してください。

拡張メソッドの作り方 (実装方法) C#
String クラスにバイト数が返してくれるメソッドが欲しい! DateTime 構造体に日付が含まれる月の最終日 (末日) を返して...

目次

文字列の拡張メソッド StringExtensions

文字列の拡張メソッドは StringExtensions クラスに実装しています。

StringExtensions クラスのメソッド一覧

StringExtensions クラスに実装しているメソッドの一覧です。

メソッド名 説明
Append 文字列を末尾に追加します。
Contains カルチャに依存した比較、または大文字と小文字を区別しない比較などの序数による比較を指定できる Contains。
Contains 部分一致・前方一致・後方一致するかどうかを判定します。
ContainsAll 指定した複数の文字列のすべてを含むかどうかを判定します。
ContainsAny 指定した複数の文字列のいずれかを含むかどうかを判定します。
CutOutAfter 指定した文字列が最初に一致した位置より後の文字列を切り取ります。
CutOutBefore 指定した文字列が最初に一致した位置より前の文字列を切り取ります。
CutOutBetween 指定した2つの文字列の間の文字列を切り取ります。
DecodeBase64 Base64 文字列からデコードします。
EncodeBase64 Base64 文字列にエンコードします。
EqualsIgnoreCase 大文字と小文字の区別は無視して同一かどうかを判定します。
ExistsAsDirectory ディレクトリーパスとして存在しているかを判定します。
ExistsAsFile ファイルパスとして存在しているかを判定します。
Format Format の簡易版。インスタンスメソッドのように使用できます。
Format Format の簡易版。インスタンスメソッドのように使用できます。 (引数付き) で呼び出せます。)
IfNullOrEmpty Null または空文字列かどうかを判定し、Null の場合は指定した置換文字列に置き換えます。
IfNullOrWhiteSpace Null または空白かどうかを判定し、Null の場合は指定した置換文字列に置き換えます。
IsAlphabet アルファベット文字かどうかを判定します。
IsAlphabetOrDigit 英数字かどうかを判定します。
IsAlphabets アルファベット文字列かどうかを判定します。
IsAlphaNumeric 英数字文字列かどうかを判定します。
IsDate 文字列が日付かどうかを判定します。
IsDateTime 文字列が日時かどうかを判定します。
IsDigit 数字かどうかを判定します。
IsEmpty 空文字列かどうかを判定します。
IsInteger 整数かどうかを判定します。
IsNotEmpty 空文字列でないかどうかを判定します。
IsNotNullAndEmpty Null および空文字列でないかどうかを判定します。
IsNotNullAndWhiteSpace Null および空白でないかどうかを判定します。
IsNullOrEmpty IsNullOrEmpty の簡易版。インスタンスメソッドのように使用できます。
IsNullOrWhiteSpace IsNullOrWhiteSpace の簡易版。インスタンスメソッドのように使用できます。
IsNumber 自然数かどうかを判定します。
IsNumeric 文字列が数値かどうかを判定します。
IsTime 文字列が時刻かどうかを判定します。
Left 文字列の左から指定した桁数の文字列を取得します。
LengthB 文字列のバイト数を取得します。
PerentPath 親のパスを取得します。
Remove 文字列から指定した文字列 (複数指定可能) を削除します。
Repeat 文字列を指定回数繰り返した文字列を取得します。
ReplaceAll 複数の文字列を一括で順番に置換します。
ReplaceBrTagToCrLf br タグを改行に置換します。
ReplaceCrLfToBrTag 改行を br タグに置換します。
Right 文字列の右から指定した桁数の文字列を取得します。
SaveAs 文字列を名前を付けて保存します。
Split 指定した区切り文字で分割した値を配列に格納します。
Split 分割する回数と区切り文字を指定して分割した値を配列に格納します。
ToBooleanOrNull 文字列を Null 許容値型の Boolean に変換します。
ToByteArray バイト配列に変換します。
ToByteOrNull 文字列を Null 許容値型の Byte に変換します。
ToDateTimeOrNull 文字列を Null 許容値型の DateTime に変換します。
ToDecimalOrNull 文字列を Null 許容値型の Decimal に変換します。
ToDirectoryInfo 文字列をディレクトリ―のパスとして DirectoryInfo にします。
ToDoubleOrNull 文字列を Null 許容値型の Double に変換します。
ToFileInfo 文字列をファイルのパスとして FileInfo にします。
ToInt16OrNull 文字列を Null 許容値型の Int16 に変換します。
ToInt32OrNull 文字列を Null 許容値型の Int32 に変換します。
ToInt64OrNull 文字列を Null 許容値型の Int64 に変換します。
ToMemoryStream ストリームに変換します。
ToSByteOrNull 文字列を Null 許容値型の SByte に変換します。
ToSingleOrNull 文字列を Null 許容値型の Single に変換します。
ToUInt16OrNull 文字列を Null 許容値型の UInt16 に変換します。
ToUInt32OrNull 文字列を Null 許容値型の UInt32 に変換します。
ToUInt64OrNull 文字列を Null 許容値型の UInt64 に変換します。
Truncate 指定された長さに文字列を切り捨てます。
YyyymmddToDate yyyyMMdd 形式の文字列を日付型に変換します。

Append メソッド

文字列を末尾に追加するメソッドです。

引数で指定するすべての文字列を現在の文字列の後ろに順に追加します。
「var result = “abc”.Append(“def”, “ghi”, “jkl”);」で呼び出すと、戻り値は「abcdefghijkl」になります。

Contains メソッド

カルチャに依存した比較や、大文字と小文字を区別しない比較などを可能にするContainsメソッドと、部分一致・前方一致・後方一致として比較できるContainsメソッドです。

引数にcomparisonを指定するメソッドにはStringComparison列挙型を指定します。

StringComparison列挙型のメンバ
列挙メンバ名 説明
CurrentCulture 0 カルチャに依存した並べ替え規則と、現在のカルチャを使用して、文字列を比較します。
CurrentCultureIgnoreCase 1 カルチャに依存した並べ替え規則と、現在のカルチャを使用し、比較対象の文字列の大文字と小文字の区別を無視して、文字列を比較します。
InvariantCulture 2 カルチャに依存した並べ替え規則と、インバリアントカルチャを使用して、文字列を比較します。
InvariantCultureIgnoreCase 3 カルチャに依存した並べ替え規則と、インバリアントカルチャを使用し、比較対象の文字列の大文字と小文字の区別を無視して、文字列を比較します。
Ordinal 4 序数(バイナリ)の並べ替え規則を使用して文字列を比較します。
OrdinalIgnoreCase 5 序数(バイナリ)の並べ替え規則を使用し、比較対象の文字列の大文字と小文字の区別を無視して、文字列を比較します。

ContainsAll メソッド

複数の文字列を指定して、そのすべてを含むかどうかを判定するメソッドです。

ContainsAny メソッド

複数の文字列を指定して、そのいずれかを含むかどうかを判定するメソッドです。

CutOutAfter メソッド

指定した文字列から後の文字列を取得するメソッドです。

「var result = “abcdefghi”.CutOutAfter(“def”)」で呼び出すと、戻り値は「”ghi”」になります。

CutOutBefore メソッド

指定した文字列までの文字列を取得するメソッドです。

「var result = “abcdefghi”.CutOutBefore(“def”);」で呼び出すと、戻り値は「”abc”」になります。

CutOutBetween メソッド

引数で指定する1つ目の文字列と2つ目の文字列の間にある文字列を取得するメソッドです。

「var result = “abcdefghi”.CutOutBetween(“bc”, “gh”);」で呼び出すと、戻り値は「”def”」になります。

DecodeBase64 メソッド

Base64文字列をデコードした文字列を取得するメソッドです。

EncodeBase64 メソッド

文字列をBase64文字列にエンコードした値を取得するメソッドです。

EqualsIgnoreCase メソッド

大文字、小文字を区別せずに同じ文字列かどうかを判定するメソッドです。

ExistsAsDirectory メソッド

ディレクトリー(フォルダー)のパスを表す文字列がディスクに存在しているかどうかを判定するメソッドです。

ExistsAsFile メソッド

ファイルのパスを表す文字列がディスクに存在しているかどうかを判定するメソッドです。

Format メソッド

インスタンスメソッドのように使用できるFormatメソッドです。

IfNullOrEmpty メソッド

Nullまたは長さ0の文字列の場合に、指定した初期値に置換した値を取得できるメソッドです。

IfNullOrWhiteSpace メソッド

Nullまたは空白文字列の場合に、指定した初期値に置換した値を取得できるメソッドです。

IsAlphabet メソッド

文字列がアルファベット1文字であるかどうかを判定するメソッドです。

IsAlphabetOrDigit メソッド

文字列がアルファベットまたは数字の1文字であるかどうかを判定するメソッドです。

IsAlphabets メソッド

文字列がアルファベットで構成された文字列であるかどうかを判定するメソッドです。

IsAlphaNumeric メソッド

文字列がアルファベットまたは数字で構成された文字列であるかどうかを判定するメソッドです。

IsDate メソッド

日付を表す文字列が日付として正しいかどうかを判定するメソッドです。

IsDateTime メソッド

日付と時刻を表す文字列が日時として正しいかどうかを判定するメソッドです。

IsDigit メソッド

文字列が数字1文字であるかどうかを判定するメソッドです。

IsEmpty メソッド

文字列が長さ0の文字列かどうかを判定するメソッドです。

IsInteger メソッド

整数を表す文字列かどうかを判定するメソッドです。

IsNotEmpty メソッド

文字列が長さ1以上の文字列かどうかを判定するメソッドです。

IsNotNullAndEmpty メソッド

文字列がNullでも長さ0の文字列でもないかどうかを判定するメソッドです。

IsNotNullAndWhiteSpace メソッド

文字列がNullでも空白文字列でもないかどうかを判定するメソッドです。

IsNullOrEmpty メソッド

インスタンスメソッドのように使用できるIsNullOrEmptyメソッドです。

IsNullOrWhiteSpace メソッド

インスタンスメソッドのように使用できるIsNullOrWhiteSpaceメソッドです。

IsNumber メソッド

自然数(0以上の整数)を表す文字列かどうかを判定するメソッドです。

IsNumeric メソッド

数値(10進数)を表す文字列かどうかを判定するメソッドです。

IsTime メソッド

時刻を表す文字列が時刻として正しいかどうかを判定するメソッドです。

Left メソッド

文字列の先頭から指定した文字数の文字列を取得するメソッドです。

LengthB メソッド

文字列の長さをバイト数で取得するメソッドです。

PerentPath メソッド

パスを表す文字列の親のパスまでの文字列を取得するメソッドです。

Remove メソッド

文字列を削除するメソッドです。

引数で指定するすべての文字列を現在の文字列から削除します。
「var result = “abcdefghijkl”.Append(“abc”, “ghi”, “jkl”);」で呼び出すと、戻り値は「def」になります。

Repeat メソッド

文字列を繰り返して重ねた文字列を取得するメソッドです。

「var result = “0”.Append(5);」で呼び出すと、戻り値は「00000」になります。
「var result = “xyz”.Append(3);」で呼び出すと、戻り値は「xyzxyzxyz」になります。

ReplaceAll メソッド

一度に複数の文字列を置換できるメソッドです。

引数replacementTuplesにはValueTuple<string, object>をカンマ区切りまたは配列で指定できます。
「var result = “あいうえおかきくけこ”.Replace(“うえ”, “した”).Replace(“かき”, “ももくり”);」を
「var result = “あいうえおかきくけこ”.ReplaceAll((“うえ”, “した”), (“かき”, “ももくり”));」で呼び出せます。

ReplaceBrTagToCrLf メソッド

brタグを表す文字列を改行に変換した文字列を取得するメソッドです。

ReplaceCrLfToBrTag メソッド

改行をbrタグを表す文字列に変換した文字列を取得するメソッドです。

引数isXhtmlをtrueにすると「<br />」falseにすると「<br>」に変換されます。

Right メソッド

文字列の末尾から指定した文字数の文字列を取得するメソッドです。

SaveAs メソッド

テキストファイルに文字列を保存します。

Split メソッド

文字列を分割して配列を取得するメソッドです。

ToBooleanOrNull メソッド

bool型に変換した値を取得するメソッドです。

ToByteArray メソッド

バイト配列に変換した値を取得するメソッドです。

ToByteOrNull メソッド

byte型に変換した値を取得するメソッドです。

ToDateTimeOrNull メソッド

DateTime型に変換した値を取得するメソッドです。

ToDecimalOrNull メソッド

decimal型に変換した値を取得するメソッドです。

ToDirectoryInfo メソッド

ディレクトリー(フォルダー)を表す文字列からDirectoryInfoオブジェクトを取得するメソッドです。

ToDoubleOrNull メソッド

double型に変換した値を取得するメソッドです。

ToFileInfo メソッド

ファイルを表す文字列からDirectoryInfoオブジェクトを取得するメソッドです。

ToInt16OrNull メソッド

short型に変換した値を取得するメソッドです。

ToInt32OrNull メソッド

int型に変換した値を取得するメソッドです。

ToInt64OrNull メソッド

long型に変換した値を取得するメソッドです。

ToMemoryStream メソッド

メモリーストリームオブジェクトに変換した値を取得するメソッドです。

ToSByteOrNull メソッド

sbyte型に変換した値を取得するメソッドです。

ToSingleOrNull メソッド

float型に変換した値を取得するメソッドです。

ToUInt16OrNull メソッド

ushort型に変換した値を取得するメソッドです。

ToUInt32OrNull メソッド

uint型に変換した値を取得するメソッドです。

ToUInt64OrNull メソッド

ulong型に変換した値を取得するメソッドです。

Truncate メソッド

文字数を指定して文字列を切り詰めた文字列を取得するメソッドです。

デフォルトのサフィックスは「…」になりますので、引数suffixを省略すると「あいうえおかきくけこさしす…」のような文字列が取得できます。

YyyymmddToDate メソッド

日付を表す8桁の数字文字列をDataTime型に変換した値を取得するメソッドです。

今後も文字列の拡張メソッドが貯まってきたら随時追加していきます。

参考記事

日付と時間の拡張メソッドについては、以下の記事をご参照ください。

日付と時間の拡張メソッド DateTime Extensions
日付と時刻の拡張メソッドがある程度貯まってきたのでこのページにまとめておこうと思います。 特定の日付の判定処理が多いですが、カレンダー関連...

10進数の拡張メソッドについては、以下の記事をご参照ください。

10 進数の拡張メソッド Decimal Extensions
10 進数の拡張メソッドをになります。 拡張メソッドがわからない方は、以下の記事を参考にしてください。 10 進数の拡張...

倍精度浮動小数点数の拡張メソッドについては、以下の記事をご参照ください。

倍精度浮動小数点数の拡張メソッド Double Extensions
倍精度浮動小数点数 Double の拡張メソッドの一覧です。 Double の 拡張メソッドは Double 構造体、Math クラス、T...

コレクションの拡張メソッドについては、以下の記事をご参照ください。

コレクションの拡張メソッド Collection Extensions
このページでは、コレクションを操作するための拡張メソッドについてまとめていきます。 コレクションに対する拡張メソッドの主な処理は、要素の追...