모든 URL에서 * 과 같은 특수 문자를 사용할 수 있습니까? & ~/*URL을 "정규화"하여 특수 문자를 새로운 것으로 바꾸는 방법
곧하지 이미 내가 원하는 무엇 강조 문자
그것이
다음 남아있는 특별한 부르는 것들은 교체 순수한 ASCII 문자에 가까운 상당의로 모든 URL을 변환하는 것입니다 경우 by
그물을 통해 많은 예제가있는이 멋진 영감을 주려고했지만 작동하지 않습니다. 예를 들어이 코드를 사용하면 문자 "é"는 @"http://www.mélange.fr/~fermer.php?aa=10&ee=13"
에서 "e"로 변환되지 않습니다.)
NSMutableCharacterSet *charactersToKeep = [NSMutableCharacterSet alphanumericCharacterSet];
[charactersToKeep addCharactersInString:@"://&=~?"];
NSCharacterSet* charactersToRemove = [charactersToKeep invertedSet];
myNSString = [[[myNSString decomposedStringWithCanonicalMapping] componentsSeparatedByCharactersInSet:charactersToRemove] componentsJoinedByString:@""];
to start, after I will have to convert remaining special characters with _
어떻게하면됩니까? 예를 들어
(만 예를 들어) 나는 변환하고 싶습니다 :
http://www.mélange.fr/~fermer.php?aa=10&ee=13
물론
의 http___www.melange.fr__fermer_php_aa_10_ee_13
에 하나의 가능한 각 특별하거나 하나를 확인하지 않고 강조된 문자.
"작동하지 않는다"는 것은 무엇을 의미합니까? 입력 문자열과 예상 및 실제 출력의 예를 들려 줄 수 있습니까? –
이 비 ASCII 문자는 NSString의 "stringByAddingPercentEscapesUsingEncoding : NSASCIIStringEncoding] ;; –
과 같은 것을 통해 인코딩 될 수 없습니다. @MartinR : 질문에 예제를 제공합니다. 보이게하고 하단에 하나를 추가하여 더 명시 적으로 표현합니다. – Oliver