我正在使用 Ruby on Rails 4.2.7。我无法从变量中剥离空白。我分不清那是什么样的空白。有万无一失的剥离方法吗?当我从某个变量中剪切和粘贴时,我无法去除空白,但是,当我键入空格时,一切都很好。在下面查看我的控制台:
2.3.0 :004 > test = " 21"
=> " 21"
2.3.0 :005 > test.strip
=> " 21"
我从另一个来源剪切和粘贴了空白区域,但没有被剥离。有什么方法可以为我的变量提供某种万无一失的剥离方法吗?
最佳答案
您可能有一个非 ASCII Unicode 空白字符,很可能是 0x00A0:
> test = "\u00A021"
=> " 21"
> test.strip
=> " 21"
和String#strip
仅(当前)知道 ASCII 空格:
strip → new_str
[...]Whitespace is defined as any of the following characters: null, horizontal tab, line feed, vertical tab, form feed, carriage return, space.
您可以使用 String#gsub
手动完成和 Space
character property :
> test = "\u00A0 21 \t\u00a0"
=> " 21 \t "
> test.gsub(/\A\p{Space}+|\p{Space}+\z/, '')
=> "21"
关于ruby-on-rails - 从 Ruby 变量中去除空格的万无一失的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39495795/