Cra*_*Dev 142 string objective-c nsstring swift
我有一个这样的字符串:@"10/04/2011"
我想在另一个字符串中只保存"10".我怎样才能做到这一点?
Jer*_*myP 376
NSArray* foo = [@"10/04/2011" componentsSeparatedByString: @"/"];
NSString* firstBit = [foo objectAtIndex: 0];
Run Code Online (Sandbox Code Playgroud)
更新7/3/2018:
既然问题已经获得了Swift标签,我应该添加Swift方法来做到这一点.它非常简单:
let substrings = "10/04/2011".split(separator: "/")
let firstBit = substrings[0]
Run Code Online (Sandbox Code Playgroud)
虽然注意它给你一个数组Substring
.如果您需要将这些转换回普通字符串,请使用map
let strings = "10/04/2011".split(separator: "/").map{ String($0) }
let firstBit = strings[0]
Run Code Online (Sandbox Code Playgroud)
要么
let firstBit = String(substrings[0])
Run Code Online (Sandbox Code Playgroud)
Ant*_*udt 36
这两个中的任何一个:
NSString *subString = [dateString subStringWithRange:NSMakeRange(0,2)];
NSString *subString = [[dateString componentsSeparatedByString:@"/"] objectAtIndex:0];
Run Code Online (Sandbox Code Playgroud)
虽然请记住,有时日期字符串格式不正确,一天(或一个月内)显示为8,而不是08,因此第一个可能是2个解决方案中最差的.
后者应该放在一个单独的数组中,这样你就可以实际检查返回的东西的长度,这样你就不会得到任何来自任何来源的损坏或无效日期字符串的异常.
小智 9
它的工作正常
NSString *dateString = @"10/10/2010";//Date
NSArray* dateArray = [dateString componentsSeparatedByString: @"/"];
NSString* dayString = [dateArray objectAtIndex: 0];
Run Code Online (Sandbox Code Playgroud)
Objective-C的:
NSString *day = [@"10/04/2011" componentsSeparatedByString:@"/"][0];
Run Code Online (Sandbox Code Playgroud)
迅速:
var day: String = "10/04/2011".componentsSeparatedByString("/")[0]
Run Code Online (Sandbox Code Playgroud)
我已经将JeremyP提供的优秀解决方案格式化为下面更通用的可重用函数:
///Return an ARRAY containing the exploded chunk of strings
+(NSArray*)explodeString:(NSString*)stringToBeExploded WithDelimiter:(NSString*)delimiter
{
return [stringToBeExploded componentsSeparatedByString: delimiter];
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
139381 次 |
最近记录: |