iOS怎么判斷字符串中是否含有某個(gè)字符串

iOS
小億
313
2023-10-21 17:46:15

在iOS中,可以使用NSString的rangeOfString:方法來(lái)判斷一個(gè)字符串中是否包含另外一個(gè)字符串。該方法返回一個(gè)NSRange結(jié)構(gòu)體,如果找到了指定的子字符串,它會(huì)返回該子字符串在原字符串中的位置和長(zhǎng)度;如果沒(méi)有找到,它會(huì)返回一個(gè)特殊的NSRange結(jié)構(gòu)體,位置為NSNotFound。

示例代碼如下:

NSString *mainString = @"Hello, World!";
NSString *subString = @"World";

NSRange range = [mainString rangeOfString:subString];
if (range.location != NSNotFound) {
    NSLog(@"字符串中包含指定的子字符串");
} else {
    NSLog(@"字符串中不包含指定的子字符串");
}

上述代碼中,主字符串為"Hello, World!“,子字符串為"World”。rangeOfString:方法返回的range結(jié)構(gòu)體中,location表示子字符串在主字符串中的起始位置,length表示子字符串的長(zhǎng)度。如果找不到子字符串,則location為NSNotFound。

注意,rangeOfString:方法默認(rèn)區(qū)分大小寫(xiě),如果不區(qū)分大小寫(xiě),可以使用rangeOfString:options:方法,并設(shè)置NSCaseInsensitiveSearch選項(xiàng)。

另外,如果只需要判斷字符串是否以某個(gè)子字符串開(kāi)頭或結(jié)尾,可以使用hasPrefix:hasSuffix:方法。

NSString *mainString = @"Hello, World!";
NSString *prefix = @"Hello";
NSString *suffix = @"World";

if ([mainString hasPrefix:prefix]) {
    NSLog(@"字符串以指定的前綴開(kāi)頭");
} else {
    NSLog(@"字符串不以指定的前綴開(kāi)頭");
}

if ([mainString hasSuffix:suffix]) {
    NSLog(@"字符串以指定的后綴結(jié)尾");
} else {
    NSLog(@"字符串不以指定的后綴結(jié)尾");
}

上述代碼中,hasPrefix:方法用于判斷字符串是否以指定的前綴開(kāi)頭,hasSuffix:方法用于判斷字符串是否以指定的后綴結(jié)尾。

0