2017-04-05 8 views

答えて

2

ちょうどrange(of:)を使用してください。例:

let haystack = Data(bytes: [1, 2, 3, 4, 5, 6]) 
let needle = Data(bytes: [3, 4]) 

if let range = haystack.range(of: needle) { 
    print("Found at", range.lowerBound, "..<", range.upperBound) 
    // Found at 2 ..< 4 
} 

オプションで検索範囲を指定したり、逆方向に検索したりできます。例:

let haystack = Data(bytes: [1, 2, 1, 2, 1, 2, 1, 2, 1, 2]) 
let needle = Data(bytes: [1, 2]) 

if let range = haystack.range(of: needle, options: .backwards, in: 2..<7) { 
    print("Found at", range.lowerBound, "..<", range.upperBound) 
    // Found at 4 ..< 6 
} 
関連する問題