3
我有空格的字符串(一個簡單的空間和一個表意空間):GSUB字符串在Ruby中的所有空間1.8
"qwe rty uiop".gsub(/[\s]+/,'') #=> "qwe rtyuiop"
如何添加所有空間代碼(例如3000,2060,205F )在我的模式?
在Ruby 1.9中,我只是加了\u3000
和其他代碼,但是它在1.8中如何呢?
我有空格的字符串(一個簡單的空間和一個表意空間):GSUB字符串在Ruby中的所有空間1.8
"qwe rty uiop".gsub(/[\s]+/,'') #=> "qwe rtyuiop"
如何添加所有空間代碼(例如3000,2060,205F )在我的模式?
在Ruby 1.9中,我只是加了\u3000
和其他代碼,但是它在1.8中如何呢?
我想我找到答案。在ActiveSupport :: Multibyte :: Chars是一個UNOCODE_WHITESPACE常量。解決方案:
pattern = ActiveSupport::Multibyte::Chars::UNICODE_WHITESPACE.collect do |c|
c.pack "U*"
end.join '|'
puts "qwe rty uiop".mb_chars.gsub(/#{pattern}/,'')
#=> qwertyuiop