Project

General

Profile

Actions

Feature #2093

closed

String#stripの対象は\sか[:space:]か

Added by naruse (Yui NARUSE) over 15 years ago. Updated over 13 years ago.

Status:
Closed
Target version:
[ruby-dev:39322]

Description

=begin
現在、String#strip は rb_enc_isspace を使っています。
つまり、[:space:] にマッチするものを落とすため、
例えばいわゆる全角空白等も切り落とす対象になっています。

しかし、他の Ruby core API は ASCII を意識した動きをすることが多く、
strip はちょっと予想を裏切る動作になっています。

なんとなくただの修正漏れのように感じるのですがどうでしょう?
=end


Related issues 2 (1 open1 closed)

Related to Backport191 - Backport #2477: String#split should be ASCII sensitiveClosedyugui (Yuki Sonoda)Actions
Related to Ruby master - Feature #7845: Strip doesn't handle unicode space characters in ruby 1.9.2 & 1.9.3 (does in 1.9.1)OpenActions
Actions #1

Updated by matz (Yukihiro Matsumoto) over 15 years ago

=begin
まつもと ゆきひろです

In message "Re: [ruby-dev:39322] [Feature #2093] String#stripの対象は\sか[:space:]か"
on Sun, 13 Sep 2009 02:25:08 +0900, Yui NARUSE writes:

|現在、String#strip は rb_enc_isspace を使っています。
|つまり、[:space:] にマッチするものを落とすため、
|例えばいわゆる全角空白等も切り落とす対象になっています。
|
|しかし、他の Ruby core API は ASCII を意識した動きをすることが多く、
|strip はちょっと予想を裏切る動作になっています。
|
|なんとなくただの修正漏れのように感じるのですがどうでしょう?

そうですね。単なるisspaceを使うべきでしょう。

=end

Actions #2

Updated by matz (Yukihiro Matsumoto) over 15 years ago

=begin
まつもと ゆきひろです

In message "Re: [ruby-dev:39336] Re: [Feature #2093] String#stripの対象は\sか[:space:]か"
on Tue, 15 Sep 2009 02:56:04 +0900, Yukihiro Matsumoto writes:

||現在、String#strip は rb_enc_isspace を使っています。
||つまり、[:space:] にマッチするものを落とすため、
||例えばいわゆる全角空白等も切り落とす対象になっています。
||
||しかし、他の Ruby core API は ASCII を意識した動きをすることが多く、
||strip はちょっと予想を裏切る動作になっています。

|そうですね。単なるisspaceを使うべきでしょう。

いざ修正してみるとsplitも[:space:]を使ってました。これも揃え
て直します。

=end

Actions #3

Updated by matz (Yukihiro Matsumoto) over 15 years ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100

=begin
Applied in changeset r24926.
=end

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0