Objective c 查询日期及;使用Regex的NSString中的时间
我想做一些类似于这个问题的事情: 但是我想做这件事Objective c 查询日期及;使用Regex的NSString中的时间,objective-c,ios,nsstring,regexkitlite,Objective C,Ios,Nsstring,Regexkitlite,我想做一些类似于这个问题的事情: 但是我想做这件事Objective-C。基本上,我希望从一个字符串中提取日期和时间,该字符串在@符号之后有一个日期和时间 例如,我有一个字符串:喂兔子@12,我想提取@之后的日期和时间,问题是字符串可以变化,例如它可以@12:00,@04/02/12,@04/02/12 12:00,@04/02/12:00,或者只是@04/02/12。这是我从字符串中提取数字的当前代码(它没有检测到“/”或“:”因此,如果字符串是@04/02/12,它将只提取@04,因为它停在
Objective-C
。基本上,我希望从一个字符串中提取日期和时间,该字符串在@
符号之后有一个日期和时间
例如,我有一个字符串:喂兔子@12
,我想提取@
之后的日期和时间,问题是字符串可以变化,例如它可以@12:00
,@04/02/12
,@04/02/12 12:00
,@04/02/12:00
,或者只是@04/02/12
。这是我从字符串中提取数字的当前代码(它没有检测到“/”或“:”因此,如果字符串是@04/02/12
,它将只提取@04
,因为它停在“/”)
我还可以使用这个正则表达式模式([0-9]+:[0-9][0-9])提取出@12:00
部分
正则表达式“@(\d+”查找一个“@”后跟一个或多个数字(并仅捕获这些数字)。如果希望它查找数字和斜杠、破折号、冒号等,则需要在正则表达式中包含这些内容。如果要查找特定的数字和标点符号模式,则需要多个子表达式与“or”(即|
字符)连接
预测所有可能的方式来表示日期和/或时间是一项艰巨的工作,特别是如果您想支持多个地区。您可能会发现,让正则表达式捕获“@”之后的任何内容(如果您不确定如何执行此操作,文档应该会有所帮助)。然后,您可以将字符串传递给,以便作为日期进行解析
NSString *regEx = @"@(\\d+)";
NSString *dateString;
r = [inputString rangeOfString:regEx options:NSRegularExpressionSearch];
if (r.location != NSNotFound)
{
dateString = [NSString stringWithFormat:@"%@",[inputString substringWithRange:r]];
return dateString;
}
else
{
return @"";
}