'init (start : end :)'는 더 이상 사용되지 않습니다. Swift 3에서 제거됩니다. '.. <'연산자를 사용합니다.
다음 코드를 사용하고 있습니다.
var continousDigitsRange:Range<Int> = Range<Int>(start: 0, end: 0)
Xcode 7.3 (Swift 2.2)으로 업데이트 한 이후로 다음과 같은 힌트를 받았습니다.
'init (start : end :)'는 더 이상 사용되지 않습니다. Swift 3에서 제거됩니다. '.. <'연산자를 사용하십시오.
나를 위해 " '.. <'연산자를 사용하여 올바르게"번역 "하는 방법이 명확하지 않습니다.
당신은 단순히 작성해야
var continousDigitsRange1:Range<Int> = 0..<0
또는 더 간단하게 가고 싶다면
var continousDigitsRange = 0..<0
또한 주목할 가치가 substringWithRange있는 것은 String에 대해 이제 다음을 사용할 수 있습니다.
let theString = "Hello, how are you"
let range = theString.startIndex.advancedBy(start) ..< theString.startIndex.advancedBy(end)
theString.substringWithRange(range)
닫힌 범위 연산자
(a...b)는 a에서 b까지의 범위를 정의하고 값 a와 b를 포함합니다. a의 값은 b보다 클 수 없습니다.반 개방 범위 연산자
(a..<b)는 a에서 b까지의 범위를 정의하지만 b는 포함하지 않습니다. 첫 번째 값은 포함하지만 최종 값은 포함하지 않기 때문에 반 개방이라고합니다. 폐쇄 범위 연산자와 마찬가지로 a의 값은 b보다 클 수 없습니다. a의 값이 b와 같으면 결과 범위는 비어 있습니다.
스위프트 프로그래밍 언어 (Swift 2.2)-기본 연산자
var continousDigitsRange:Range<Int> = Range<Int>(start: 0, end: 0)
--to--
var continousDigitsRange:Range<Int> = 0..<0
bmichotte의 답변을 전체적으로 보여주기 위해 ...
let theString = "Hello, how are you today my friend"
let start = 3
let end = 15
let range = theString.startIndex.advancedBy(start) ..< theString.startIndex.advancedBy(end)
let p = theString.substringWithRange(range)
print("this is the middle bit>\(p)<")
이것은 이것이 중간 비트입니다> lo, 어떻게 <
신속한 3.0을 참조하여 몇 가지 포인트 추가
// 가산 범위 예.
let range1 = 0..<5
계산 가능한 폐쇄 범위 예
let range2 = 0...5
// 범위로부터의 범위
let range = Range(uncheckedBounds: (range1.lowerBound,range1.upperBound))
// substringRange에서 거리를 가져옵니다.
let str = "Hello, how are you"
let substringRange = str.characters.indices
// Swift 3.0 이하
let length = substringRange.distance(from: substringRange.startIndex, to: substringRange.endIndex)
// Swift 3.0 용
let length2 = str.distance(from: substringRange.startIndex, to: substringRange.endIndex)
나는 항상 문자열의 부분 문자열 범위를 얻는 함수를 가지고 있습니다. 다음은 Swift 3의 업데이트 된 기능입니다.
func getSubStringRange(fullString: String, fromIndex: Int, subStringSize: Int) -> Range<String.Index> {
let startIndex = fullString.characters.index(fullString.startIndex, offsetBy: fromIndex)
let endIndex = fullString.characters.index(startIndex, offsetBy: subStringSize)
let subStringRange = startIndex..<endIndex
return subStringRange
}
The function is pretty self explanatory - You pass in a string(fullString), the index of that string where the substring starts(fromIndex) and how big the subString is(subStringSize).
Example:
let greeting = "Hi, my name is Nathaniel"
let getName = greeting[getSubStringRange(fullString: greeting, fromIndex: 15, subStringSize: 9)]
print("Name: \(getName)")
-> Prints: "Name: Nathaniel"
'Program Club' 카테고리의 다른 글
| PowerShell에서 % AppData %의 경로 가져 오기 (0) | 2020.10.26 |
|---|---|
| jQuery 및 HTML을 사용하여 CSV로 내보내기 (0) | 2020.10.26 |
| 어설 션 vs. JUnit 어설 션 (0) | 2020.10.26 |
| 두 테이블의 SQL 비교 데이터 (0) | 2020.10.26 |
| JavaScript를 사용하여 문자열에서 쉼표 제거 (0) | 2020.10.26 |