次の方法で共有


INameCreationService.IsValidName メソッド

指定した名前が有効かどうかを示す値を取得します。

名前空間: System.ComponentModel.Design.Serialization
アセンブリ: System (system.dll 内)

構文

'宣言
Function IsValidName ( _
    name As String _
) As Boolean
'使用
Dim instance As INameCreationService
Dim name As String
Dim returnValue As Boolean

returnValue = instance.IsValidName(name)
bool IsValidName (
    string name
)
bool IsValidName (
    String^ name
)
boolean IsValidName (
    String name
)
function IsValidName (
    name : String
) : boolean

パラメータ

  • name
    検証対象の名前。

戻り値

名前が有効な場合は true。それ以外の場合は false

解説

INameCreationService の実装は、有効な名前のパラメータを定義する規則を持つことができます。このメソッドを実装して、名前を検証し、上記の規則を適用できます。

使用例

INameCreationService.IsValidName メソッドを実装するコード例を次に示します。このメソッドは、文字列検証スキームを使用して指定文字列の各文字を確認し、指定文字列が有効な名前であるかどうかを判定します。このメソッドは、文字列が有効である場合は true を返し、それ以外の場合は false を返します。

' Returns whether the specified name contains 
' all valid character types.
Public Function IsValidName(ByVal name As String) As Boolean Implements INameCreationService.IsValidName
    Dim i As Integer
    For i = 0 To name.Length - 1
        Dim ch As Char = name.Chars(i)
        Dim uc As UnicodeCategory = [Char].GetUnicodeCategory(ch)
        Select Case uc
            Case UnicodeCategory.UppercaseLetter, UnicodeCategory.LowercaseLetter, UnicodeCategory.TitlecaseLetter, UnicodeCategory.DecimalDigitNumber
            Case Else
                Return False
        End Select
    Next i
    Return True
End Function
// Returns whether the specified name contains 
// all valid character types.
public bool IsValidName(string name)
{            
    for(int i = 0; i < name.Length; i++)
    {
        char ch = name[i];
        UnicodeCategory uc = Char.GetUnicodeCategory(ch);
        switch (uc) 
        {
            case UnicodeCategory.UppercaseLetter:       
            case UnicodeCategory.LowercaseLetter:     
            case UnicodeCategory.TitlecaseLetter:                                                  
            case UnicodeCategory.DecimalDigitNumber:                         
                break;
            default:
                return false;                
        }
    }
    return true;        
 }
// Returns whether the specified name contains 
// all valid character types.
virtual bool IsValidName( String^ name )
{
   for ( int i = 0; i < name->Length; i++ )
   {
      Char ch = name[ i ];
      UnicodeCategory uc = Char::GetUnicodeCategory( ch );
      switch ( uc )
      {
         case UnicodeCategory::UppercaseLetter:
         case UnicodeCategory::LowercaseLetter:
         case UnicodeCategory::TitlecaseLetter:
         case UnicodeCategory::DecimalDigitNumber:
            break;

         default:
            return false;
      }
   }
   return true;
}
// Returns whether the specified name contains 
// all valid character types.
public boolean IsValidName(String name)
{
    for (int i = 0; i < name.length(); i++) {
        char ch = name.get_Chars(i);
        UnicodeCategory uc = Char.GetUnicodeCategory(ch);
        switch (uc) {
            case UnicodeCategory.UppercaseLetter:
            case UnicodeCategory.LowercaseLetter:
            case UnicodeCategory.TitlecaseLetter:
            case UnicodeCategory.DecimalDigitNumber:
                break;

            default:
                return false;
        }
    }
    return true;
} //IsValidName

プラットフォーム

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 2.0、1.1、1.0

参照

関連項目

INameCreationService インターフェイス
INameCreationService メンバ
System.ComponentModel.Design.Serialization 名前空間