gpt4 book ai didi

ios - 根据长度+字符串范围裁剪NSString

转载 作者:行者123 更新时间:2023-12-01 19:07:54 24 4
gpt4 key购买 nike

我有一个很大的NSString要修剪:

this is an example of my long string

首先,我将其修剪为一个或多个特定单词。例如,我选择单词“long”。为达到这个:
NSRange textRange = [[theEntireString lowercaseString] rangeOfString:@"long"];
NSString *subString = //do something to get the individual word(s)??

这将导致:
long

但是,我的最终结果需要10个字符。所以在这种情况下,我要达到的最终结果是:
my long st

如您所见,我平均在单词的左侧和右侧添加字符,直到达到所需的字符数为止,然后将一个或多个单词放在中间。

任何帮助深表感谢。

最佳答案

只要该字符串不多次包含定义的分隔符,就可以正确看到:

NSString *string = @"This is an example of my LONG string.";

NSString *separator = @"long";

NSInteger desiredLength = 10;

NSRange range = [[string lowercaseString] rangeOfString:separator];

if(range.location != NSNotFound)
{
NSInteger remainder = (desiredLength - [separator length]);

NSInteger halfRemainder = (remainder / 2);

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

NSString *result = [string substringWithRange:range];

NSLog(@"result: %@", result);
}
result: my LONG st
这应该是相当可定制的,以满足您的需求。

另外,可能值得检查halfRemainder并不试图除以奇数(即5/2),因为这被转换为整数,这可能会导致超出范围异常的问题。

关于ios - 根据长度+字符串范围裁剪NSString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18595158/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com