2014年3月24日月曜日

Objective-Cで英字のみのデータを判別する方法

Objective-Cで英字のみのデータを判別する方法


調べても見つけづらかったので、備忘録として記載しておきます。


Objective-Cで正規表現


正規表現を使って以下のように記述する。

============================

NSError* err = nil;
NSRegularExpression* regex = nil;

// 検索する文字列
NSString* string = @"abc123";

// 正規表現オブジェクト作成(英字のみ)
regex = [NSRegularExpression
           regularExpressionWithPattern:@"([a-zA-Z]*)"
           options:NSRegularExpressionCaseInsensitive
           error:&err];

// 比較
NSTextCheckingResult *match = [regex firstMatchInString:string
                        options:0
                        range:NSMakeRange(0, string.length)];

if (match) {
    // マッチした時の処理
    NSRange matchRange = [match range]; // マッチした個数
    
    //マッチした個数と文字列の長さが同じ場合(全て英字)
    if (matchRange.length == string.length) {
        //英字のみの場合の処理
    }
}

============================





0 件のコメント:

コメントを投稿