Bas*_*que 51 objective-c nsstring ios nsrange
是否有一个简短的方法来说"整个字符串"而不是输入:
NSMakeRange(0, myString.length)]
Run Code Online (Sandbox Code Playgroud)
这种代码中最长的一部分是最不重要的(因为我通常想在整个字符串中搜索/替换),这似乎很愚蠢......
[myString replaceOccurrencesOfString:@"replace_me"
withString:replacementString
options:NSCaseInsensitiveSearch
range:NSMakeRange(0, myString.length)];
Run Code Online (Sandbox Code Playgroud)
Jos*_*ell 39
功能?分类方法?
- (NSRange)fullRange
{
return (NSRange){0, [self length]};
}
Run Code Online (Sandbox Code Playgroud)
[myString replaceOccurrencesOfString:@"replace_me"
withString:replacementString
options:NSCaseInsensitiveSearch
range:[myString fullRange]];
Run Code Online (Sandbox Code Playgroud)
BJ *_*mer 19
从来没听说过.但您可以轻松添加NSString类别:
@interface NSString (MyRangeExtensions)
- (NSRange)fullRange
@end
@implementation NSString (MyRangeExtensions)
- (NSRange)fullRange {
return (NSRange){0, self.length};
}
Run Code Online (Sandbox Code Playgroud)
Swi*_*ect 11
NSMakeRange(0, str.length)
Run Code Online (Sandbox Code Playgroud)
或作为extension:
extension NSString {
func fullrange() -> NSRange {
return NSMakeRange(0, self.length)
}
}
Run Code Online (Sandbox Code Playgroud)
这不短,但是......好吧
NSRange range = [str rangeOfString:str];
Run Code Online (Sandbox Code Playgroud)
Swift 4+,适用于NSRegularExpression和NSAttributedString
extension String {
var nsRange : NSRange {
return NSRange(self.startIndex..., in: self)
}
}
Run Code Online (Sandbox Code Playgroud)
extension String {
var fullRange:Range<String.Index> { return startIndex..<endIndex }
}
Run Code Online (Sandbox Code Playgroud)
如
let swiftRange = "abc".fullRange
Run Code Online (Sandbox Code Playgroud)
要么
let nsRange = "abc".fullRange.toRange
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
29917 次 |
| 最近记录: |