NSString:blabla.DDD + DDDD的正则表达式,其中D是数字

时间:2012-10-11 23:15:01

标签: objective-c ios regex nsstring

我需要一个正则表达式来检查字符串是否具有此模式:

[一些随机字符] .DDD + DDDD

它可以以随机字符开头,但以点结尾。然后三位数,然后加号后跟四位数。如何构造正则表达式并检查NSString是否具有此模式?

谢谢!

3 个答案:

答案 0 :(得分:2)

这应该是你要找的。

NSString *regex = @"(^[^.]*\.[0-9]{3}\+[0-9]{4}$)";
NSPredicate *pred = [NSPRedicate predicateWithFormat:@"SELF MATCHES %@", regex];
if ([pred evaluateWithObject:mystring])
{
  //do something
}

有很多优秀的正则表达式生成器可以测试你的正则表达式。 E.x。:http://rubular.com

答案 1 :(得分:0)

正确的正则表达式是^[^.]*\.[0-9]{3}\+[0-9]{4}$

其他两个答案都忘了逃避某些角色。

答案 2 :(得分:-1)

表达式^ [^。] * \。[0-9] {3} \ + [0-9] {4} $应该这样做。

^表示字符串的开头 [^。] * \。表示零个或多个非句点字符,后跟句点 [0-9] {3}表示3位数(0-9) \ +表示加号 [0-9] {4}表示4位数 $表示字符串

的结尾