0

我需要軌道中的正則表達式來處理歐洲語言的特殊字符,例如。 é,ä,ö,ü,ß。請幫助我。軌道中特殊字符的正則表達式

+0

你能更具體一些嗎?你想匹配所有包含這些字符的字符串?或只是人物?哪些字符被視爲_special_?那些不是英文字母? – 2010-12-03 14:09:11

+1

什麼是特殊字符?是`` - 「`還是`」/「`特殊字符?是`「Α」`和`「В」`? 「`」$「`,`」¢「`,`」£「`或者」€「``怎麼樣?哎,是一個特殊的角色?定義*特殊字符*。你的意思是沒有包含在[標準字符集]中的任何內容(http://en.wikipedia.org/wiki/DEC_Radix-50)? – tchrist 2010-12-03 14:10:42

回答

2

正則表達式可以很好地處理「特殊」字符。如果你想匹配一組特殊字符,你需要告訴表達式這些字符是什麼。你對「特殊」的定義可能與下一個人不相符。

舉例來說,如果你想看看,如果字符串包含任何你上面列出的字符,你可以這樣做:

irb(main):001:0> word = "resumé" 
=> "resum\303\251" 
irb(main):002:0> word =~ /[éäöüß]/ 
=> 5 
irb(main):003:0> word.gsub(/é/, 'e') 
=> "resume" 

我希望這有助於!