繁体   English   中英

检测NSString中的单词是否有数字的最佳方法是什么?

[英]what's the best way to detect if a word in NSString has a number?

示例:字符串中带有数字的单词

NSString * str = [NSString stringWithFormat:@“这是101个example1字符串”]

由于example1在结尾处有一个数字,我想将其删除。 我可以将其分解为数组并使用谓词将其过滤掉,但是这对我来说似乎很慢,因为我需要像这样一百万个。

什么是更有效的方法?

谢谢!

大概NSRegularExpression 我认为([^0-9 ]+)\\d+|\\d+([^0-9 ]+)应该可以。 只需将其替换为$1

根据查克的回答,以下是完整的代码,以防有人觉得有用:

NSError *error = NULL;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"([^0-9 ]+)\\d+|\\d+([^0-9 ]+)"
                                                                       options:NSRegularExpressionCaseInsensitive
                                                                         error:&error];

NSString *modifiedString = [regex stringByReplacingMatchesInString:str2
                                                           options:0
                                                             range:NSMakeRange(0, [str2 length])
                                                      withTemplate:@"$1"];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM