我正试图从下面的NSString中获取DOE,JOHN:
IDCHK9898960101DL00300171DL1ZADOE,JOHN
我试图将字符串分开1ZA,因为这将是不变的.
这是我到目前为止所尝试过的,但它给了我与我正在寻找的相反的东西:
NSString *getTheNameOuttaHere = @"IDCHK9898960101DL00300171DL1ZADOE,JOHN";
// scan for "1ZA"
NSString *separatorString = @"1ZA";
NSScanner *aScanner = [NSScanner scannerWithString:getTheNameOuttaHere];
NSString *thingsScanned;
[aScanner scanUpToString:separatorString intoString:&thingsScanned];
NSLog(@"container: %@", thingsScanned);
Run Code Online (Sandbox Code Playgroud)
输出:
container: IDCHK9898960101DL00300171DL
Run Code Online (Sandbox Code Playgroud)
任何帮助都会很棒!谢谢!
我有一个格式的字符串2011年1月25日上午3:17.我需要将其转换为NSDate.我使用格式为@"MMM d,yyyy h:mm a"的NSDateFormatter.如果iphone时间为12小时格式,则效果很好,但如果时间为24小时格式,则返回nil.谁能帮我这个????
我正在努力摆脱与C一起工作时的一些困惑.
是使用char *name在某种意义上一样有工作NSString *name在这个意义上,指针仍指向它的第一个内存分配?
Ofcourse NSString有一堆额外的东西,但这不是我的意思,将char *name允许我工作,就好像它是一个NSString *name,以便我将来可以使用指针"名称"吗?
我正在寻找一种传递NSString的方法,它包含4个字符,整体代表一个4位数字,如0741,我一直在环顾四周,不断遇到这个函数
myArray = [dataString componentsSeparatedByString:@"\r\n"];
Run Code Online (Sandbox Code Playgroud)
componentsSeparatedByString ...如果我的组件没有分开,我该怎么办?
好吧,在查看下面发布的链接后,我找到了NSRange,并设法让它与下面的解决方案完美配合,但它感觉abit抽出并且可能比它需要的更笨重...让我知道你是什么想想,我能做些什么改进.
NSRange MyOneRange = {0, 1};
NSRange MyTwoRange = {1, 1};
NSRange MyThreeRange = {2, 1};
NSRange MyFourRange = {3, 1};
NSString *firstCharacter = [[NSString alloc] init];
NSString *secondCharacter = [[NSString alloc] init];
NSString *thridCharacter = [[NSString alloc] init];
NSString *fourthCharacter = [[NSString alloc] init];
firstCharacter = [myFormattedString substringWithRange:MyOneRange];
secondCharacter = [myFormattedString substringWithRange:MyTwoRange];
thridCharacter = [myFormattedString substringWithRange:MyThreeRange];
fourthCharacter = [myFormattedString substringWithRange:MyFourRange];
NSLog(@"%@, %@, %@, %@", firstCharacter, secondCharacter, thridCharacter, fourthCharacter);
Run Code Online (Sandbox Code Playgroud) 所以我有以下代码导致XCode中的运行时错误
NSString* temp = [[param objectforkey@"firstParam"] stringValue];
int tempNum = [[param objectforkey@"secondParam"] intValue];
Run Code Online (Sandbox Code Playgroud)
param从plist加载.firstParam是字符串,secondParam是数字
第一行崩溃了程序.
现在有趣的是,如果我做了一个艰苦的种姓,它是有效的,即:
NSString* temp = (NSString*)[param objectforkey@"firstParam"];
int tempNum = [[param objectforkey@"secondParam"] intValue];
Run Code Online (Sandbox Code Playgroud)
只是想知道为什么id会有不一致的实现,因为我必须使用intValue来转换为int,但是必须进行硬转换以获得NSString?为什么不stringValue?
如何检测NSString是否包含特定单词,例如is.
如果NSString是Here is my string. His isn't a mississippi isthmus. It is...?该方法应检测单词is并返回YES.
但是,如果NSString是His isn't a mississipi isthmus,它应该返回NO.
我尝试过使用,if ([text rangeOfString:@"is" options:NSCaseInsensitiveSearch].location != NSNotFound) { ... }但它检测的字符不是单词.
在我的应用程序中,我将电话号码作为用户的输入.号码应采用美国格式.我想动态地显示它(555)-888-888.例如,当用户在达到4位时开始输入数字时,它显示如下的数字(555)-4,依此类推.我试过replaceString方法,但我发现它不起作用.
好的,所以我知道格式字符串不是字符串文字警告,但我不知道为什么它出现在NSRunAlertPanel上,定义是:
APPKIT_EXTERN NSInteger NSRunAlertPanel(NSString*title,NSString*msgFormat,NSString*defaultButton,NSString*alternateButton,NSString*otherButton,...)NS_FORMAT_FUNCTION(2,6);
报告错误时,我通常只在消息上传递error.localizedDescription,例如:
NSRunAlertPanel(@"error", err.localizedDescription, @"OK",nil,nil);
Run Code Online (Sandbox Code Playgroud)
但升级到xcode 5.1后,我开始收到此警告.
所以我尝试过这样的事情:
NSRunAlertPanel(@"error", [NSString stringWithFormat:@"%@", err.localizedDescription], @"OK", nil, nil);
Run Code Online (Sandbox Code Playgroud)
和它的情况一样.任何人有任何想法如何解决这个问题?
使用Objective-C时,我们通常使用以下代码来获取详细信息
NSString *firstName = (__bridge_transfer NSString *)ABRecordCopyValue(contactPerson, kABPersonFirstNameProperty);
Run Code Online (Sandbox Code Playgroud)
在Swift中我尝试了以下内容
var firstName : NSString = ABRecordCopyValue(contactPerson, kABPersonFirstNameProperty).takeUnretainedValue() as NSString
Run Code Online (Sandbox Code Playgroud)
而且由于错误,我无法构建
Bitcast requires both operands to be pointer or neither %224 = bitcast %objc_object* %223 to %PSs9AnyObject_, !dbg !486 Bitcast requires both operands to be pointer or neither %225 = bitcast %PSs9AnyObject_ %224 to i8*, !dbg !486 LLVM ERROR: Broken function found, compilation aborted! Command /Applications/Xcode6-Beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift failed with exit code 1
我刚刚在一个班级内创建了一个Extensionfor 班级NSStringCategory
#import "NSString+Name.h"
@interface NSString(Name)
@property (nonatomic, retain) NSString *var;
@end
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试访问类别类中的私有变量时,应用程序崩溃并给出错误。
@implementation NSString (Name)
- (NSString*)newString{
[self setVar:@"Its a new string"]; // Crashes here
NSLog(@"name = %@",self.var);
return self.var;
}
@end
Run Code Online (Sandbox Code Playgroud)
撞车原因
无法识别的选择器发送到实例0x1023641c8 2015-05-25 11:12:49.246 Tute [710:14433] ***由于未捕获的异常'NSInvalidArgumentException'终止了应用程序,原因:'-[__ NSCFConstantString setVar:]:无法识别的选择器发送到实例0x1023641c8'
如果我能够在该变量中分配值,那么为什么说不识别的选择器
nsstring ×10
ios ×5
objective-c ×4
iphone ×3
c ×1
casting ×1
char ×1
cocoa ×1
components ×1
nsarray ×1
nsdate ×1
nsdictionary ×1
pointers ×1
substring ×1
swift ×1