第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

NSString中子字符串出現(xiàn)的次數(shù)?

NSString中子字符串出現(xiàn)的次數(shù)?

守著一只汪 2019-10-09 15:08:23
如何獲得NSString(例如,@"cake")在較大的NSString(例如,@"Cheesecake, apple cake, and cherry pie")中出現(xiàn)的次數(shù)?我需要在很多字符串上執(zhí)行此操作,因此無論使用哪種方法都必須相對較快。謝謝!
查看完整描述

3 回答

?
子衿沉夜

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊

這未經(jīng)測試,但應(yīng)該是一個(gè)好的開始。


NSUInteger count = 0, length = [str length];

NSRange range = NSMakeRange(0, length); 

while(range.location != NSNotFound)

{

  range = [str rangeOfString: @"cake" options:0 range:range];

  if(range.location != NSNotFound)

  {

    range = NSMakeRange(range.location + range.length, length - (range.location + range.length));

    count++; 

  }

}


查看完整回答
反對 回復(fù) 2019-10-09
?
慕村225694

TA貢獻(xiàn)1880條經(jīng)驗(yàn) 獲得超4個(gè)贊

在尋找比我更好的方法,但這是另一個(gè)例子:


NSString *find = @"cake";

NSString *text = @"Cheesecake, apple cake, and cherry pie";


NSInteger strCount = [text length] - [[text stringByReplacingOccurrencesOfString:find withString:@""] length];

strCount /= [find length];

我想知道哪個(gè)更有效。


我NSString為更好的用法做了一個(gè)分類:


// NSString+CountString.m


@interface NSString (CountString)

- (NSInteger)countOccurencesOfString:(NSString*)searchString;

@end


@implementation NSString (CountString)

- (NSInteger)countOccurencesOfString:(NSString*)searchString {

    NSInteger strCount = [self length] - [[self stringByReplacingOccurrencesOfString:searchString withString:@""] length];

    return strCount / [searchString length];

}

@end

只需通過以下方式調(diào)用即可:


[text countOccurencesOfString:find];

可選:您可以通過定義以下內(nèi)容將其修改為不區(qū)分大小寫的搜索方式 options:


查看完整回答
反對 回復(fù) 2019-10-09
  • 3 回答
  • 0 關(guān)注
  • 863 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)