我需要一个正则表达式来检查字符串是否具有这种模式:
[一些随机字符].DDD+DDDD
它可以以随机字符开头,但以点结尾。然后是三位数字,然后是一个加号,然后是四位数字。如何构造正则表达式并检查 NSString 是否具有这种模式?
谢谢!
我需要一个正则表达式来检查字符串是否具有这种模式:
[一些随机字符].DDD+DDDD
它可以以随机字符开头,但以点结尾。然后是三位数字,然后是一个加号,然后是四位数字。如何构造正则表达式并检查 NSString 是否具有这种模式?
谢谢!
这应该是您正在寻找的。
NSString *regex = @"(^[^.]*\.[0-9]{3}\+[0-9]{4}$)";
NSPredicate *pred = [NSPRedicate predicateWithFormat:@"SELF MATCHES %@", regex];
if ([pred evaluateWithObject:mystring])
{
//do something
}
有很多很好的正则表达式生成器来测试你的正则表达式。例如:http ://rubular.com
正确的正则表达式是^[^.]*\.[0-9]{3}\+[0-9]{4}$
其他两个答案都忘记转义某些字符。
表达式 ^[^.]*\.[0-9]{3}\+[0-9]{4}$ 应该这样做。
^ 表示字符串 [^.]*\ 的开头。表示零个或多个非句点字符后跟一个句点 [0-9]{3} 表示 3 位 (0-9) \+ 表示加号 [0-9]{4} 表示 4 位 $ 表示字符串结尾