繁体   English   中英

如何在iOS中从NSString查找单词和句号位置?

[英]How to find words and full stop position from NSString in iOS?

我想从nsstring中找到任何单词或句号。

NSString *str = @"Hi, my name is Tina. I want to ask something. I am trying a lot. But I am not able. To find full stop. Position Everytime. It come in str.";

在此,我要跟踪停止位置,而不是“ Str”中每个停止位置的第一个停止位置。

我知道如何找到单词,但是每次出现在str上时都无法获得完全的止损位置。

这是我在做什么

NSString *str = @"Hi, my name is Tina. I want to ask something. I am trying a lot. But I am not able. To find full stop. Position Everytime. It come in str.";

NSInteger count = 0;
NSArray *arr = [str componentsSeparatedByString:@" "];
for(int i=0;i<[arr count];i++)
{
    if([[arr objectAtIndex:i] isEqualToString:@"."])
    count++;

}

我不希望这样,因为它会给我str字符的长度,而不是单词的长度。 我想检查句号即将到来之后。

if ([str3 rangeOfString:@"."].location == xOut)  {  // dont want

要么

if ([str3 rangeOfString:@"."].location != NSNotFound)  {  // dont want

任何想法或建议都将受到欢迎。

NSString *str = @"Hi, my name is Tina. I want to ask something. I am trying a lot. But I am not able. To find full stop. Position Everytime. It come in str.";
[str enumerateSubstringsInRange:NSMakeRange(0, str.length) options:NSStringEnumerationBySentences usingBlock:^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) {
    [substring enumerateSubstringsInRange:NSMakeRange(0, substring.length) options:NSStringEnumerationByWords | NSStringEnumerationReverse usingBlock:^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) {
        NSLog(@"%@", substring); // last word

        *stop = YES;
    }];
}];

这将为您提供每个句子的最后一个单词。

使用此代码-

NSString *str = @"Hi, my name is Tina. I want to ask something. I am trying a lot. But I am not able. To find full stop. Position Everytime. It come in str.";

NSInteger count = 0;
NSArray *arr = [str componentsSeparatedByString:@"."];

for(int i = 0; i< [arr count]; i++)
{
    NSString *sentence = [arr objectAtIndex:i];
    sentence = [sentence stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
    NSArray *wordArray = [sentence componentsSeparatedByString:@" "];
    count = [wordArray count];
    NSLog(@"No of words after full stop is comming = %i", count);

}

尝试这个

NSString *str = @"Hi, my name is Tina. I want to ask something. I am trying a lot. But I am not able. To find full stop. Position Everytime. It come in str.";

NSInteger count = 0;
NSArray *arr = [str componentsSeparatedByString:@" "];

for(int i=0;i<[arr count];i++)
{

       NSString *arrStr=[arr objectAtIndex:i];

       for(int j=0;j<arrStr.length;j++){

       NSString *Schar=[arrStr substringWithRange:NSMakeRange(j, 1)];

       if([Schar isEqualToString:@"."])

         count++;

      }



}

在这里,计数将显示时间。 在字符串中。

看看@以下链接:

NSUInteger numberOfOccurrences = [[yourString componentsSeparatedByString:@"."] count] - 1;

NSString中子字符串出现的次数?

NSString中字符的出现次数

希望这可以帮助 :)

暂无
暂无

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

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