String」タグアーカイブ

C#で配列char[]をstringに変換する方法

C#でcharの配列をstringに変換する方法を調べてみたところ、次の2つが使い易そうな感じでした。

new stringを使う方法

char[] array = { 'a', 'b', 'c', 'd', 'e' };
string s = new string(array);

Console.WriteLine(s);

実行結界

abcde

string.Concatを使う方法

char[] array = { 'a', 'b', 'c', 'd', 'e' };
string s = string.Concat(array);

Console.WriteLine(s);

実行結界

abcde

他にもstring.Appendを使って1文字ずつ追加していく方法等いろいろあると思いますので、使い易い実装を探してみてください。

C#のcharを大文字・小文字に変換する方法

C#のstringを大文字・小文字に変換したい場合はToLower/ToUpperが使えます。

string s;

// 小文字に変換
s.ToLower();

// 大文字に変換
s.ToUpper();

そこで、charを大文字・小文字に変換したい場合に何か簡単な方法がないか調べてみたところChar.ToLower/Char.ToUpperというのが便利みたいです。

使い方

// 小文字に変換
Char.ToLower('A');

// 大文字に変換
Char.ToLower('a');

お手軽にcharの大文字↔小文字を変換したい人は試してみてください。

リンク

Char.ToLower Method (System) | Microsoft Docs
https://docs.microsoft.com/en-us/dotnet/api/system.char.tolower?view=netframework-4.8

正規表現で文字列を分割したい場合はRegex.Split

C#で正規表現で文字列を分割したい場合はRegex.Splitが便利です。
使い方は次のような感じです。

数字で分割するサンプル

using System;
using System.Text.RegularExpressions;

public class Example1
{
  static public void Main ()
  {
    string pattern = "[0-9]+";
    string input = "abc123def456ghi";

    string[] result = Regex.Split(input, pattern);

    foreach(string s in result) Console.WriteLine(s);
  }
}

実行結果

abc
def
ghi

さらに、分割した文字列も表示したい場合は正規表現の( )を使います。

using System;
using System.Text.RegularExpressions;

public class Example2
{
  static public void Main ()
  {
    string pattern = "([0-9]+)";
    string input = "abc123def456ghi";

    string[] result = Regex.Split(input, pattern);

    foreach(string s in result) Console.WriteLine(s);
  }
}

実行結果

abc
123
def
456
ghi

正規表現が不要な場合はString.Splitも使えますので、いろいろ試してみてください。

リンク

Regex.Split Method (System.Text.RegularExpressions) | Microsoft Docs
https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.regex.split?view=netframework-4.8

String.Split Method (System) | Microsoft Docs
https://docs.microsoft.com/en-us/dotnet/api/system.string.split?view=netframework-4.8