小编Kar*_*ren的帖子

如何使用格式本地化 NSString

如何使用格式本地化 NSString。

int value = 20;

NSString *str = @"hello";   

textLabel.text = [NSString stringWithFormat:@"%d %@", value, str];
Run Code Online (Sandbox Code Playgroud)

我试过

textLabel.text = [NSString stringWithFormat:NSLocalizedString(@"%d %@", @"%d %@"), value, str];
Run Code Online (Sandbox Code Playgroud)

但没有用。任何帮助表示赞赏。

objective-c string-formatting nsstring nslocalizedstring

2
推荐指数
1
解决办法
1528
查看次数

如何从完整字符串 iOS swift 中找到字符串的多个 NSRange

let fullString = "Hello world, there are \(string(07)) continents and \(string(195)) countries."
let range = [NSMakeRange(24,2), NSMakeRange(40,3)]
Run Code Online (Sandbox Code Playgroud)

需要找到整个完整字符串中数字的 NSRange,并且两个数字有可能相同。目前如上所示进行硬编码,消息可以是动态的,而硬编码值将出现问题。

我已经分割了字符串并尝试获取,NSRange因为可能存在相同的值。比如 stringOne 和 stringTwo。

func findNSMakeRange(initialString:String, fromString: String) {
        let fullStringRange = fromString.startIndex..<fromString.endIndex
        fromString.enumerateSubstrings(in: fullStringRange, options: NSString.EnumerationOptions.byWords) { (substring, substringRange, enclosingRange, stop) -> () in
            let start = distance(fromString.startIndex, substringRange.startIndex)
            let length = distance(substringRange.startIndex, substringRange.endIndex)
            let range = NSMakeRange(start, length)

            if (substring == initialString) {
                print(substring, range)
            }
        })
    }
Run Code Online (Sandbox Code Playgroud)

收到类似错误Cannot invoke distance with an argument list of …

nsstring nsrange swift

2
推荐指数
1
解决办法
2013
查看次数