首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

iOS NSString 以特定分隔符分割字串:componentsSeparatedByString 用法

     編輯:程式設計綜合問答

需求

字串格式 "Name*Email*Address",以 * 分割取得三個欄位。

標準做法

NSString *raw = @"zhangsan*zhangsan@test.com*beijing china";
NSArray *parts = [raw componentsSeparatedByString:@"*"];
// parts = @[@"zhangsan", @"zhangsan@test.com", @"beijing china"]

if (parts.count == 3) {
    NSString *name = parts[0];
    NSString *email = parts[1];
    NSString *address = parts[2];
    NSLog(@"Name: %@, Email: %@, Address: %@", name, email, address);
}

進階:處理空欄位、多重分隔符

  • 若字串開頭/結尾有分隔符,結果陣列會包含空字串 @"",需自行過濾。
  • 多重分隔符(如 "," 或 ";")可用 componentsSeparatedByCharactersInSet::
NSCharacterSet *separators = [NSCharacterSet characterSetWithCharactersInString:@";,"];
NSArray *parts = [raw componentsSeparatedByCharactersInSet:separators];

Swift 版本

let raw = "zhangsan*zhangsan@test.com*beijing china"
let parts = raw.components(separatedBy: "*")
// 或多重分隔符
let parts2 = raw.components(separatedBy: CharacterSet(charactersIn: ";,"))
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved