コガネブログ

平日更新を目標にUnityやC#などのゲーム開発アレコレを書いていきます

【C#】文字列が URL かどうかを確認する関数

正規表現を使って文字列がある形式と一致するか調べる: .NET Tips: C#, VB.NET

using System.Text.RegularExpressions;

/// <summary>
/// Regex クラスに関する汎用関数を管理するクラス
/// </summary>
public static class RegexUtils
{
    /// <summary>
    /// 指定された文字列が URL かどうかを返します
    /// </summary>
    public static bool IsUrl( string input )
    {
        if ( string.IsNullOrEmpty( input ) )
        {
            return false;
        }
        return Regex.IsMatch( 
           input, 
           @"^s?https?://[-_.!~*'()a-zA-Z0-9;/?:@&=+$,%#]+$" 
        );
    }
}