如何擷取字串裡面的所有數字
在網上找了很長時間還是沒有找到,於是我再次請教了老師
NSString *string =@“[email protected]#TG¥……&888imu67”;
//正則表示式
NSRegularExpression *regex = [NSRegularExpressionregularExpressionWithPattern:@"\\d+"options:NSRegularExpressionCaseInsensitiveerror:nil];
//d+是正則表示式的表示方法
斜槓表示反編輯----不怎麼懂
尋找匹配的字串存入陣列
NSArray *arr = [regex
NSString * numberStr = [[NSStringalloc]init];
NSString *subString ;
NSMutableArray *muarray =[[NSMutableArrayalloc]init]; ;
陣列遍歷
for (NSTextCheckingResult *resultin arr)
{
subString = [stringsubstringWithRange
把遍歷之後的結果放在可變數組裡
[muarrayaddObject:subString];
}
//所有元素用-分開
numberStr = [muarraycomponentsJoinedByString:@"-"];
NSLog(@"%@",numberStr);
這是老師寫的,說實話,前面完全不懂
講解了之後才知道,前面使用了正則表示式
什麼是正則表示式呢?
百度是這樣說的:
正則表示式是對字元串操作的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,組成一個“規則字串”,這個“規則字串”用來表達對字串的一種過濾邏輯。 我是理解為一種規則來規範這些字串