|
.NET TIPS
特定の文字列で始まるか/終わるかを判定するには?[C#、VB]
デジタルアドバンテージ 一色 政彦
2007/12/20 |
|
|
エンド・ユーザーが入力した文字列内容が妥当かを検証する際に、その文字列が「特定の文字列で始まるかどうか」を調べたいときがある。例えばHTTP形式のURLの入力を求める項目で、その入力文字列の先頭が正しく「http://」で始まっているかを確かめたいときなどだ。このような場合には、Stringクラス(System名前空間)のStartsWithメソッドが利用できる。
StartsWithメソッドを使うには、当然、文字列が代入されたStringオブジェクトが必要だ。そのStringオブジェクトのStartsWithメソッドを呼び出す。パラメータには、調べたい「特定の文字列」を指定する。
StartsWithメソッドは、Stringオブジェクトの文字列が「特定の文字列」で始まっている場合にはTrueを、そうでない場合にはFalseを、戻り値で返す。例えば、Stringオブジェクトの文字列が「ftp://www.atmarkit.co.jp/fdotnet/」で、特定の文字列が「http://」であれば、戻り値はFalseになる。
StartsWithメソッドを利用したコンソール・アプリケーションのサンプル・プログラムを次に示す。
using System;
class Class1
{
[STAThread]
static void Main(string[] args)
{
string text = "あいうえお";
if (text.StartsWith("あい"))
{
Console.WriteLine("「あい」で始まるテキスト");
}
else
{
Console.WriteLine("「あい」で始まらないテキスト");
}
// 出力:「あい」で始まるテキスト
if (text.EndsWith("えお"))
{
Console.WriteLine("「えお」で終わるテキスト");
}
else
{
Console.WriteLine("「えお」で終わらないテキスト");
}
// 出力:「えお」で始まるテキスト
}
}
|
Module Module1
Sub Main()
Dim text As String = "あいうえお"
If (text.StartsWith("あい")) Then
Console.WriteLine("「あい」で始まるテキスト")
Else
Console.WriteLine("「あい」で始まらないテキスト")
End If
' 出力:「あい」で始まるテキスト
If (text.EndsWith("えお")) Then
Console.WriteLine("「えお」で終わるテキスト")
Else
Console.WriteLine("「えお」で終わらないテキスト")
End If
' 出力:「えお」で始まるテキスト
End Sub
End Module
|
|
StartsWithメソッドとEndsWithメソッドを利用したコンソール・アプリケーションのサンプル・プログラム(上:C#、下:VB) |
上記のコードにはEndsWithメソッドを利用したコードが含まれているが、これは、StartsWithメソッドとは逆に、Stringオブジェクトの文字列が「特定の文字列で<終わるか>」を調べるためのものだ。EndsWithメソッドのパラメータと戻り値は、StartsWithメソッドと同じ仕様である。
カテゴリ:クラス・ライブラリ 処理対象:文字列
使用ライブラリ:Stringクラス(System名前空間) |
|
generated by
|
|
Insider.NET 記事ランキング
本日
月間