2012-12-21 3 views
4

나는 NSString에 대해 capitalizedString 방법을 다루는 흥미로운 케이스가 있습니다.capitalizedString은 하이픈 다음에 단어를 대문자로 표시합니까?

나는

다음 문자열 "블루 어 - 영"에 capitalizedString라고하며 반환 내가 특별히 capitalizedString에 dev에 문서에서 관련하여 다음과 같은 읽어 리콜 "Bloor-Yonge"

:

을 "기타 하이픈 및 기타 구두점과 같은 일반적인 단어 구분 기호는 고려되지 않으므로이 방법은 일반적으로 여러 단어 문자열에 대해 원하는 결과를 생성하지 못할 수 있습니다. "

yonge-->Yonge이되는 이유와 설명서에 명시된 예외 사항이 발생한 이유가 궁금합니다. 아무도 이것을 설명 할 수 있습니까?

미리 감사드립니다.

P.S 실제로 내가하고 싶었던 것입니다. 포스트 하이픈 단어를 대문자로 쓰고 싶지 않을 때 나는 미래에 대해서 궁금합니다.

+4

문서 유효 기간이 경과하거나 잘못, 또는'capitalizedString' 방법에 버그가 하나있다 . 참조 문서 하단에 이러한 문제를보고 할 수있는 링크가 있습니다. Apple에 불일치를 알리십시오. – rmaddy

답변

4

이 방법은이 방법의 출력을 확인, 당신을 위해 작동합니다

- (NSString *)CapitalizeString:(NSString *)str { 


    [str stringByReplacingOccurrencesOfString:@"-" withString:@"#Check# "]; 

    [str capitalizedString]; 

    [str stringByReplacingOccurrencesOfString:@"#Check# " withString:@"-"]; 

    return str; 

} 

enter image description here

+0

내가 실수하지 않는다면, 안녕하세요 Junaid, capitalizedString이 실제로 그렇게합니다. 그게 애플 코드의 다른 버그인지 궁금해했다. 잠재적 인 문제를 해결하는 데 도움이되는 코드를 제공해 주셔서 감사합니다. –

+0

capitalizedString은 해당 기능을 제공하지 않습니다.이 방법이 효과가있는 경우이 대답을 올바른 것으로 표시하십시오. – junaidsidhu

관련 문제