2020年09月30日
川俣晶の縁側ソフトウェアC# コーディング How To total 540 count

【入門級】セで始まりスで終わる文字列を判別する

Written By: 川俣 晶連絡先

セで始まりスで終わる文字列を判別する §

 文字列の配列の中に、セで始まりスで終わる文字列があるといいます。

 それを判別したいとします。

 どうすれば良いのでしょうか。

 やり方はいろいろあります。

  • 正規表現を使う
  • 最初の1文字と最後の1文字を抜き出して文字比較を行う

 しかし、StartsWithメソッドとEndsWithメソッドを使うと簡単です。

 これらは、文字列の最初の文字列と最後の文字列が指定通りかを判定します。

罠の数々 §

  • StartsWithメソッドとEndsWithメソッドは便利だが、前後に空白文字が挟まっていたりすると判定に失敗する (必要ならTrimメソッドの併用なども検討しよう)
  • 判定すべき文字が1文字でも文字列を渡すのは少しオーバーヘッドかもしれない (簡単に文字判定に持ち込めるならそちらの方が良いこともあるだろう)

参考リンク §

String.StartsWith メソッド

String.EndsWith メソッド

 実は文字列を単純比較する他にも使い方がある。どんなケースに上の2メソッドが使用できるのか上のリンクから辿って確認してみよう。

リポジトリ §

https://github.com/autumn009/cshowto

StartEnd §

using System;

class Program

{

    static void Main()

    {

        string[] ar = {

            "クラウド","セフィロス","ティファ","エアリス","バレット"

        };

        foreach (var item in ar)

        {

            if (item.StartsWith("セ") && item.EndsWith("ス")) Console.WriteLine(item);

        }

    }

}

実行結果

セフィロス

COOL C# CREW

C#ハウツー連載の解説増量、カラーのソース、新規書き下ろし追加の読みやすい単行本はこちら。

C#ハウツー: 逆引き入門・こんな機能はどう書くの?