문자열 검색
Coddy Swift 여정의 로직 및 흐름 섹션에 포함된 레슨 — 56개 중 3번째.
문자열 내에 부분 문자열이 포함되어 있는지 확인하는 세 가지 빠른 방법:
let email = "alice@coddy.tech"
print(email.contains("@")) // true
print(email.hasPrefix("alice")) // true
print(email.hasSuffix(".tech")) // truecontains는 어떤 부분 문자열이든 확인하는 반면, hasPrefix와 hasSuffix는 시작 부분이나 끝 부분만 확인합니다. 이들은 모두 대소문자를 구분하므로, 대소문자 구분이 중요하다면 먼저 문자열을 소문자로 변환하세요.
이것들을 !와 결합하여 빠른 "누락" 테스트를 수행하세요:
if !email.contains("@") {
print("not a valid email")
}챌린지
쉬움한 줄의 입력을 읽습니다. 다음의 모든 항목을 확인하여 간단한 이메일 형식인지 유효성을 검사하세요:
- 정확히 하나의
@를 포함해야 합니다 (문자에 대해filter+count를 사용하세요) @로 시작하거나 끝나지 않아야 합니다.tech,.com, 또는.org로 끝나야 합니다 (대소문자 구분 없음)
모든 검사를 통과하면 valid를 출력하고, 그렇지 않으면 invalid를 출력하세요. 입력값의 소문자 버전과 비교하여 처리하세요.
입력값이 alice@CODDY.TECH인 경우, 출력값은 valid입니다.
치트 시트
문자열에 부분 문자열이 포함되어 있는지, 또는 특정 문자열로 시작하거나 끝나는지 확인합니다:
let email = "alice@coddy.tech"
email.contains("@") // true – 문자열 내 어디든
email.hasPrefix("alice") // true – 시작 부분
email.hasSuffix(".tech") // true – 끝 부분세 가지 모두 대소문자를 구분합니다. 필요한 경우 먼저 .lowercased()를 사용하세요:
email.lowercased().hasSuffix(".tech")부재 여부를 테스트하려면 !를 사용하세요:
if !email.contains("@") { print("not a valid email") }직접 해보기
let line = readLine()!
// TODO: 정확히 하나의 '@'가 있는지, 양 끝에 위치하지 않는지, 접미사가 [.tech .com .org] 중 하나인지 확인하십시오.
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.