iOS Regex去除特殊符號

來源:互聯網
上載者:User

標籤:沒有   regex   first   移除   遇到   ace   object   多個   regular   

1、眾所周知,Regex如果利用得當的話,其實用性還是相當強大的 ,基本上目前所有的預研都是支援Regex的 ,無非是對文法的支援不同。

2、在實際應用中 ,我們可能需要去截取遇到第一個特殊字元之前的文字 ,此時就需要用到Regex ,畢竟特殊符號那麼多 ,如果真有人用多個if去操作的話,只能說重新整理了我的認知!

話不多說,附上代碼

- (NSString *)getNewSubStoreNameByRegularExpression:(NSString *)storeName{    NSError *error = NULL;    NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"[-()()—”“$&@%^*?+?=|{}?【】???¥!!.<>/:;:;、,,。]" options:NSRegularExpressionCaseInsensitive | NSRegularExpressionDotMatchesLineSeparators | NSRegularExpressionAnchorsMatchLines | NSRegularExpressionAllowCommentsAndWhitespace error:&error];    NSString *result = [regex stringByReplacingMatchesInString:storeName options:0 range:NSMakeRange(0, [storeName length]) withTemplate:@"pk"];    return [result componentsSeparatedByString:@"pk"].firstObject;}

  

上述代碼的意思是先將特殊字元換成pk,然後以pk為關鍵字進行分割,並取第一個元素。

細心的小夥伴會發現特殊字元中並沒有包含“#”字元,“#” 作為字元包含在Regex中,將導致整個Regex驗證失敗,此結論還是我通過二分法找出來的。故將“#”從運算式中移除

iOS Regex去除特殊符號

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.