2つのファイル(NSString形式)を区別しようとしています。私が知る限り、これは正規表現を比較して一致させることによって行うことができます。私が持っている2つのJPGファイルの形式は以下のとおりです。正規表現と文字列(ファイル名)の一致
butter.jpg
バター-1.JPG
私の質問私は2列に一致するように書くことができますどのような正規表現です上記?私は検索して式の例を見つけましたが、どのように読んで、それが間違っていると思いますか分かりません。ここで
は私のコードです:
NSString *exampleFileName = [NSString stringWithFormat:@"butter-1.jpg"];
NSString *regEx = @".*l{2,}.*";
NSPredicate *regExTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regEx];
if ([regExTest evaluateWithObject:exampleFileName] == YES) {
NSLog(@"Match!");
} else {
NSLog(@"No match!");
}
EDIT:
NSString *regEx = @"[a-z]+-[0-9]+.+jpg";
に一致するようにしようとする:
私は、次を使用してみました
NSString *exampleFileName = [NSString stringWithFormat:@"abcdefg-112323.jpg"];
でテスト:
ABC-11.jpg(マッチ)
abcsdas-.JPG(ノーマッチ)
abcdefg11。 (ノーマッチ)
ABCDEFG-3123.jpg(マッチ)
今のように、それは動作しますが、私はそうではないかもしれない任意のチャンス、任意の入力を排除したいですか?それは1 -
と、少なくとも数を持つ必要があるよう
あなたの一致基準をより詳細に説明する必要があります。なぜ、[exampleFileName hasPrefix:@ "butter"] && [exampleFileName hasSuffix:@ "。jpg"] 'と言うのはなぜですか? –
こんにちは、すみません。私の基準は.jpgがそこになければならないということです。バターはアルファベットであればどこでもかまいません。しかしハイフンと数字はそこになければなりません。 – Dawson