이미 매우 similar question입니다. 당신이 또한 공간, 점, 대시를 제거 통지하고, 누가 어떤 다른 알고 때까지, 경이를 작동다른 특수 문자를 보존하면서 문자열에서 액센트/발음 구별 기호를 제거합니다. (시도한 mb_chars.normalize 및 iconv)
string.mb_chars.normalize(:kd).gsub(/[^x00-\x7F]/n, '').to_s
: 솔루션 중 하나는 이와 같은 코드를 사용합니다.
처음 코드가 어떻게 작동하는지 잘 모르겠지만, 스트립으로 만들 수 있습니다. 악센트가 있습니까? 아니면 최소한 보존 할 문자 목록을 받아야합니까? regexps '에 대한 나의 지식은 작은, 그러나 나는 (아무 소용) 시도 :
string.mb_chars.normalize(:kd).gsub('-', '__DASH__').gsub
(/[^x00-\x7F]/n, '').gsub('__DASH__', '-').to_s
흉포 :
/[^\-x00-\x7F]/n # So it would leave the dash alone
는이 같은 뭔가를하려고 해요? 예 ...
는 또한 시도했다 :
iconv = Iconv.new('UTF-8', 'US-ASCII//TRANSLIT') # Also tried ISO-8859-1
iconv.iconv 'Café' # Throws an error: Iconv::IllegalSequence: "é"
도와주세요?
오, 영주 ... 나를 용서해주십시오. 고마워요! – Ivan
예, 우리는 모두 가장 간단한 오타로 인한 디버깅 혼란을 지루하게했습니다! – bobince
공백은 어떻게됩니까? 그것은 공백을 보존하지 못합니다. –