NSScanner 掃描字符串

兩個經常使用於掃描字符串的方法spa

  //'指針'只移動一個位置,判斷當前所指的字符是不是目標字符@"x", 如果則存入result中,返回YES,不然NO
BOOL res = [scanner scanString:@"x" intoString:&result];
//'指針'從開頭一直掃描到有首次出現目標字符@"x"爲止,'指針'停留在目標@"x"以前, 將目標字符前面的所有內容存入result中 BOOL res1
= [scanner scanUpToString:@"x" intoString:&result];

 

例子:.net

1.  在iOS中使用HTML格式的字符串,去掉全部<>中的內容指針

NSString *str = @"我愛你<lalala>大發<大大發>《》<adsfad>asfd";

NSScanner *scanner = [NSScanner scannerWithString:str]; // 初始化一個NSScanner對象

NSString *text = @""; // 用來存儲查詢到的字符串

while (scanner.isAtEnd == NO) { // 判斷是否掃描完畢

    [scanner scanUpToString:@"<" intoString:nil]; // 查找字符串中的@"<"子串,並將scanLocation停留在@"<"的首個字符的位置上

    [scanner scanUpToString:@">" intoString:&text]; // 查找字符串中的@">"子串,並截取@"<"到@">"的子串(不包括@">")

    // 將掃描到的<>中的內容所有替換成@""

    str = [str stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@"%@>", text] withString:@""];

}

NSLog(@"%@", str);

  

2. 輸出全部<>中的內容code


NSString *str = @"我愛你<lal ala> 大發  <大大發>《》<adsfad>asfd";

NSScanner *scanner = [NSScanner scannerWithString:str]; // 初始化一個NSScanner對象

NSString *text = @""; // 用來存儲查詢到的字符串while (scanner.isAtEnd == NO) { // 判斷是否掃描完畢

    [scanner scanUpToString:@"<" intoString:nil]; // 查找字符串中的@"<"子串,並將scanLocation停留在@"<"的首個字符的位置上

    [scanner scanString:@"<" intoString:nil];

    [scanner scanUpToString:@">" intoString:&text]; // 查找字符串中的@">"子串,並截取@"<"到@">"的子串(不包括@">")

    NSLog(@"%@", text);

}

 

 

 

參考: orm

https://blog.csdn.net/qq_21649645/article/details/43971425對象

相關文章
相關標籤/搜索