文字列にこのパターンがあるかどうかを確認するには、正規表現が必要です。
[いくつかのランダムな文字].DDD+DDDD
ランダムな文字で開始できますが、ドットで終了します。次に 3 桁、次にプラス記号の後に 4 桁が続きます。正規表現を作成して、NSString にこのパターンがあるかどうかを確認するにはどうすればよいですか?
ありがとう!
文字列にこのパターンがあるかどうかを確認するには、正規表現が必要です。
[いくつかのランダムな文字].DDD+DDDD
ランダムな文字で開始できますが、ドットで終了します。次に 3 桁、次にプラス記号の後に 4 桁が続きます。正規表現を作成して、NSString にこのパターンがあるかどうかを確認するにはどうすればよいですか?
ありがとう!
これはあなたが探しているものでなければなりません。
NSString *regex = @"(^[^.]*\.[0-9]{3}\+[0-9]{4}$)";
NSPredicate *pred = [NSPRedicate predicateWithFormat:@"SELF MATCHES %@", regex];
if ([pred evaluateWithObject:mystring])
{
//do something
}
正規表現をテストするための優れた Regex Generator が多数あります。例: http://rubular.com
正しい正規表現は^[^.]*\.[0-9]{3}\+[0-9]{4}$
他の回答はどちらも、特定の文字をエスケープするのを忘れていました。
式 ^[^.]*\.[0-9]{3}\+[0-9]{4}$ で実行できます。
^ は文字列の開始を意味します [^.]*\. 0 個以上の非ピリオド文字の後にピリオドが続くことを意味します [0-9]{3} は 3 桁 (0-9) を意味します \+ はプラスを意味します [0-9]{4} は 4 桁を意味します $ は文字列の終わりを意味します