Notice
Recent Posts
Recent Comments
Link
투케이2K
217. (swift/xcode) [유틸 파일] stringSuperContains : String 문자열 대소문자 및 공백 구분 없이 문자열 포함 확인 실시 본문
Swift
217. (swift/xcode) [유틸 파일] stringSuperContains : String 문자열 대소문자 및 공백 구분 없이 문자열 포함 확인 실시
투케이2K 2025. 2. 1. 10:20[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT5
[소스 코드]
// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------
- 언어 : Swift5
- 개발 툴 : Xcode
- 구분 : 유틸 파일
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[소스 코드]
// --------------------------------------------------------------------------------------
func stringSuperContains(origin: String, search: String) -> Bool {
/*
// -----------------------------------------
[stringSuperContains 메소드 설명]
// -----------------------------------------
1. String 문자열 대소문자 및 공백 구분 없이 문자열 포함 확인 실시
// -----------------------------------------
2. 호출 방법 :
C_Util().stringSuperContains(origin: "hello투케이TWOK", search: "twok") // true
C_Util().stringSuperContains(origin: "hello투케이TWOK", search: "TWO K") // true
C_Util().stringSuperContains(origin: "hello투케이TWOK", search: "투케이2k") // false
C_Util().stringSuperContains(origin: "hello투케이TWOK", search: "2k") // false
// -----------------------------------------
3. 리턴 반환 : 문자열 대소문자 및 공백 구분 없이 문자열 포함 하는 경우 true / 아닌 경우 false
// -----------------------------------------
*/
// [초기 리턴 데이터 변수 선언 실시]
var returnData = false
var M_LOG = ""
// [인풋 데이터 널 체크 수행 실시]
if C_Util().stringNotNull(str: origin) == true {
// [1] : 원본 문자열 그대로 포함 여부 확인
if (origin.contains(search) == true) {
M_LOG = "[SUCCESS] : STEP [1] SEARCH : ORIGIN CONTAINS"
returnData = true
}
// [2] : 문자열 공백 제거 포함 여부 확인
var removeNullOrigin = origin.replaceAll(_string: " ", _replace: "")
var removeNullSearch = search.replaceAll(_string: " ", _replace: "")
if (returnData == false) {
if (removeNullOrigin.contains(removeNullSearch) == true) {
M_LOG = "[SUCCESS] : STEP [2] SEARCH : REPLACE CONTAINS"
returnData = true
}
}
// [3] : 대소문자 구분 없이 포함 여부 확인
if (returnData == false) {
removeNullOrigin = removeNullOrigin.lowercased()
removeNullSearch = removeNullSearch.lowercased()
if (removeNullOrigin.contains(removeNullSearch) == true) {
M_LOG = "[SUCCESS] : STEP [3] SEARCH : LOWER CASE CONTAINS"
returnData = true
}
}
// [최종 로그 값 확인]
if (returnData == false) {
M_LOG = "[FAIL] : STEP SEARCH CONTAINS FALSE"
}
}
else {
M_LOG = "[ERROR] : Input Data Is Null"
}
// [로그 출력 실시]
S_Log._D_(description: "String 문자열 대소문자 및 공백 구분 없이 문자열 포함 확인 실시", data: [
"INPUT [Origin] :: \(origin)",
"INPUT [Search] :: \(search)",
"M_LOG :: \(M_LOG)",
"RETURN :: \(returnData)"
])
// [리턴 데이터 반환 실시]
return returnData
}
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[결과 출력]
// --------------------------------------------------------------------------------------
================================================================
LOG :: TYPE :: LOG :: 🟢
-------------------------------------------------
LOG :: CLASS PLACE :: C_Util.swift :: stringSuperContains(origin:search:) :: 4529
-------------------------------------------------
LOG :: NOW TIME :: 2025-01-27 13:02:33
-------------------------------------------------
LOG :: DESCRIPTION :: String 문자열 대소문자 및 공백 구분 없이 문자열 포함 확인 실시
-------------------------------------------------
LOG :: INPUT [Origin] :: hello투케이TWOK
-------------------------------------------------
LOG :: INPUT [Search] :: TWO K
-------------------------------------------------
LOG :: M_LOG :: [SUCCESS] : STEP [2] SEARCH : REPLACE CONTAINS
-------------------------------------------------
LOG :: RETURN :: true
================================================================
// --------------------------------------------------------------------------------------
반응형
'Swift' 카테고리의 다른 글
Comments