這裏是一個noob問題。搜索並替換字符串中的擴展ASCII
我正在嘗試自動搜索和替換字符串中的ASCII值的過程。
所以,我有一個的UITextField
NSString *searchText;
searchText = (mmText.text);
內容構建,然後我做一個小的循環,並檢查所有輸入的字符爲他們的ASCII值的字符串。如果它們不在允許的範圍內,我想搜索並用其他東西替換它們(?現在)
所以我們假設我在循環中,並且我得到一個ASCII 45字符(它是一個負號) :
現在我想找到字符串中的ASCII 45字符和一個帶問號
這取代它就是我此刻做:
NSString *ascStr = [NSString stringWithFormat:@"%c", asciiCode];
NSRange matchSpace;
matchSpace = [searchText rangeOfString: ascStr];
if (matchSpace.location == NSNotFound)
{}
else
NSMutableString *searchandReplace = [NSMutableString stringWithString: searchText];
[searchandReplace replaceCharactersInRange: [searchandReplace rangeOfString: ascStr] withString: @"?"];
mmText.text = searchandReplace;
}
這w ^對於一個正常的ASCII值(0-255),它可以正常工作,但它似乎不適用於來自外語的擴展ASCII值。例如,在使用韓語模式時,其中一個主字符看起來像是一個雙重交叉的W,但是當通過NSLog打印時,它看起來像是版權標誌。這可能是搜索和替換程序無法使用的原因。它具有8361的ASCII值。
有什麼想法?謝謝!