Ash*_*mar 4 string iphone objective-c nsstring ios
想要得到最后一次出现的#的索引但是bellow代码对另一个字符工作正常但是没有给出特殊性"#"的完美结果
代码在viewDidLoad中正常工作但在textfield中没有工作shouldChangeCharactersInRange.
码:
txtTest.text = @"@ashish @test #vijay $4030 @post";
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
NSRange range = [textField.text rangeOfString:@"a" options:NSBackwardsSearch];
NSLog(@"a :: %d ",range.location);
range = [str rangeOfString:@"@" options:NSBackwardsSearch];
NSLog(@"@ :: %d ",range.location);
range = [str rangeOfString:@"#" options:NSBackwardsSearch];
NSLog(@"# :: %d",range.location);
range = [str rangeOfString:@"$" options:NSBackwardsSearch];
NSLog(@"$ :: %d\n",range.location);
}
Run Code Online (Sandbox Code Playgroud)
结果:: a :: 17 @ :: 26 #:: 2147483647 $ :: 20
尝试%lu unsigned long而不是%d.它的工作正常
NSString *str = @"ashish @test #vijay $4030 @post";
NSRange range = [str rangeOfString:@"a" options:NSBackwardsSearch];
NSLog(@"a :: %lu ",(unsigned long)range.location);
range = [str rangeOfString:@"@" options:NSBackwardsSearch];
NSLog(@"@ :: %lu ",(unsigned long)range.location);
range = [str rangeOfString:@"#" options:NSBackwardsSearch];
NSLog(@"# :: %lu",(unsigned long)range.location);
range = [str rangeOfString:@"$" options:NSBackwardsSearch];
NSLog(@"$ :: %lu\n",(unsigned long)range.location);
Run Code Online (Sandbox Code Playgroud)
a :: 17
@ :: 26
#:: 13
$ :: 20
| 归档时间: |
|
| 查看次数: |
2514 次 |
| 最近记录: |