How to count the number of lines in an Objective-C string (NSString)?

后端 未结 3 1734
执笔经年
执笔经年 2020-12-14 16:26

I want to count the lines in an NSString in Objective-C.

  NSInteger lineNum = 0;
  NSString *string = @\"abcde\\nfghijk\\nlmnopq\\nrstu\";
  NSInteger lengt         


        
3条回答
  •  一个人的身影
    2020-12-14 16:59

    Apple recommends this method:

    NSString *string;
    unsigned numberOfLines, index, stringLength = [string length];
    
    for (index = 0, numberOfLines = 0; index < stringLength; numberOfLines++)
        index = NSMaxRange([string lineRangeForRange:NSMakeRange(index, 0)]);
    

    See the article. They also explain how to count lines of wrapped text.

提交回复
热议问题