★ 生成
// 全て"1"という文字列で生成
var str = "1"
var str = "\(1)"
var str = "\("1")"
var str = String("1")
var str = String(1)
var str = 1.description
★ 文字列を指定文字で分割した配列として返す
// --- split ---
let str = "aa bb cc"
var map_splitValue = str.split { $0 == " " }
//=> ["aa", "bb", "cc"]
type(of: map_splitValue)
//=> Array<Substring>.Type
★ 指定文字列で文字列配列を結合した文字列を返す
var strArray = ["a", "b", "c"]
var joinString = strArray.joinWithSeparator(",")
//=> "a,b,c"
★ 空文字かどうかの判定
var str = ""
if str.isEmpty {
print("空文字")
}
★ 文字列結合
var numString = "123" + 456.description + "\(789)"
//=> numString = "123456789"
extension String {
var length: Int {
get { return self.count }
}
}
★ 文字列を文字単位で分割して配列に格納する1
var str:String = "あいうえ"
let charactersArray = str.characters.map {
String($0)
}
charactersArray
//=> ["あ", "い", "う", "え"]
★ 文字列を文字単位で分割して配列に格納する2
var str = "あいうえ"
let charactersArray = Array(str.characters)
//=> ["あ", "い", "う", "え"]
★ 文字数を文字単位で分割して各配列に格納する
var str:String = "あいうえ"
var a1 = [String]()
var a2 = [String]()
var a3 = [String]()
var a4 = [String]()
var a5 = [String]()
str.characters.enumerate().forEach {
// [a1,a2,a3,a4,a5][$0.index].append(String($0.element))
switch $0.index {
case 0: a1.append(String($0.element))
case 1: a2.append(String($0.element))
case 2: a3.append(String($0.element))
case 3: a4.append(String($0.element))
case 4: a5.append(String($0.element))
default: ()
}
}
print(a1) //=> ["あ"]
print(a2) //=> ["い"]
print(a3) //=> ["う"]
print(a4) //=> ["え"]
print(a5) //=> []
★ 任意の文字列を検索してrangeを取得する
var str = "abcdefghi"
// 任意の文字列ある位置を取得する、取得できない場合はnilを返す
if let range = str.range(of: "cde") {
let low = range.lowerBound
//=> 2
let upper = range.upperBound
//=> 5
let s = str.replacingCharacters(in: range, with: "CDE")
//=> "abCDEfghi"
}
★ 0埋め
参考URL:[iOS8] Swiftで数字の桁数をゼロ埋めする方法
// 4桁の0埋め
let value = NSString(format: "%04d", 123)
//=> 0123
★ 文字列切り出し
let str = "1234567890"
//指定した値までを取得
let toIndex = (str as NSString).substringToIndex(8)
//=> "12345678"
//指定した値以降を取得
let fromIndex = (str as NSString).substringFromIndex(6)
//=> "7890"
//指定した値から指定した値まで
let range1 = NSMakeRange(6,2)
let withRange = (str as NSString).substringWithRange(range1)
//=> "78"