[C#]文字列操作7選(文字埋め / 分割 / 文字列を含むか判定)

C# C#

この前の文字列操作系の記事に続いて、文字列操作で使ったメソッドについて記載しています。

文字埋め

C#で文字埋めして、表示する時にはPadLeft, PadRightを使います。
以下、使い方です。

PadLeft

文字列に[.]でPadLeftのメソッド呼び出しを行って、引数として全体の文字数を渡します。
これは、埋める前の文字を含めた文字数になります。

数値だけ渡した場合は、左が空白埋めになります。

var testNo = "999";
Console.WriteLine("[" + testNo + "]");
Console.WriteLine("[" + testNo.PadLeft(8) + "]");

// 結果:
// [999]
// [     999]

0など特定の文字で埋める場合は下記のように、第2引数に埋める文字を渡します。

Console.WriteLine("[" + testNo.PadLeft(8, '0') + "]");

// 結果:
// [00000999]

PadRight

PadLeftと同じで、全体の文字数を渡すと文字数で足りない分を埋めてくれます。

var testNo = "999";
Console.WriteLine("[" + testNo + "]");
Console.WriteLine("[" + testNo.PadRight(8) + "]");

// 結果:
// [999]
// [999     ]

PadLeftと同じで埋める場合は下記のように、第2引数に埋める文字を渡します。

Console.WriteLine("[" + testNo.PadRight(8, '0') + "]");

// 結果:
// [99900000]

文字列分割

Split

文字列に[.]でSplitのメソッド呼び出しを行うと分割してくれます。
分割したい文字列を引数で渡します。

下記はカンマ[,]で分割しています。

var fruits = "apple,orange,grape,";
var splitFruits = fruits.Split(",");
foreach (var oneFruits in splitFruits) {
    Console.WriteLine(oneFruits);
}

// 結果:
// apple
// orange
// grape

文字列を含むか判定

Contains

文字列に[.]でContainsを呼び出して判定します。
文字列を含んでいた場合はTrueで、なかった場合はFalseになります。

下記にorangeが含まれているか判定しています。

var fruits = "apple,orange,grape,";
if (fruits.Contains("orange"))
{
    Console.WriteLine("オレンジがある");
}
else {
    Console.WriteLine("オレンジがない");
}

// 結果:
// オレンジがある

文字列から空白(指定)文字を取り除く

Trim

文字列に[.]でTrimを呼び出すと、空白を取り除けます。
Trimを使った場合は、先頭と最後の空白を取り除きます。

Console.WriteLine("[" + " test1 ".Trim() + "!]");
// 結果: [test1!]

特定の文字を取り除く場合は、取り除きたい文字を引数で渡します。
下記はカンマを取り除いています。

Console.WriteLine(",test1,test2,test3,".Trim(','));
// 結果: test1,test2,test3

TrimStart

文字列に[.]でTrimStartを呼び出すと、先頭の空白を取り除けます。

Console.WriteLine("[" + " test2 ".TrimStart() + "!]");
// 結果: [test2 !]

文字を渡すと、Trimと同じように先頭の特定の文字だけ取り除けます。

Console.WriteLine(",test1,test2,test3,".TrimStart(','));
// 結果: test1,test2,test3,

TrimEnd

文字列に[.]でTrimEndを呼び出すと、最後の空白を取り除けます。

Console.WriteLine("[" + " test3 ".TrimEnd() + "!]");
// 結果: [ test3!]

文字を渡すと、Trimと同じように最後の特定の文字だけ取り除けます。

Console.WriteLine(",test1,test2,test3,".TrimEnd(','));
// 結果: ,test1,test2,test3

コメント

タイトルとURLをコピーしました