iOS謂詞匹配字串以及替換

來源:互聯網
上載者:User

標籤:result   regular   with   match   nsstring   repo   方法   nbsp   ase   

1.判斷某個字串是否符合某個Regex,通常用這個方法:

// 判斷字串首字元是否為字母NSString *string = @"wo";// 1、準備正則式NSString *regex = @"^[A-Za-z]*$"; // 只能是字母,不區分大小寫// 2、拼接謂詞NSPredicate *predicateRe1 = [NSPredicate predicateWithFormat:@"self matches %@", regex];// 3、匹配字串BOOL resualt = [predicateRe1 evaluateWithObject:string];NSLog(@"匹配結果%d", resualt);

2.但是我們開發過程中也有可能遇到這種需求,匹配字串並且找出符合正則的字元,並替換成其他的字元顯示出來,這種情況下可以用這個方法:

NSString *string = textField.text;

 // 1、準備正則式

    NSString *regex = @"[^\\x00-\\xff]|[\{}()/]";

 

    

    NSString * replacement = @"";

    //    // 建立 NSRegularExpression 對象,匹配 Regex

    NSRegularExpression *regExp = [[NSRegularExpression alloc] initWithPattern:regex

                                                                       options:NSRegularExpressionCaseInsensitive

                                                                         error:nil];

    NSString *resultStr = string;

    // 替換匹配的字串為 searchStr

    resultStr = [regExp stringByReplacingMatchesInString:string

                                                 options:NSMatchingReportProgress

                                                   range:NSMakeRange(0, string.length)

                                            withTemplate:replacement];

    NSLog(@"\\nsearchStr = %@\\nresultStr = %@",string,resultStr);

    textField.text = resultStr;

 

iOS謂詞匹配字串以及替換

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.