Project

General

Profile

Actions

Feature #1949

closed

Warn needless escaped characters

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

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

Description

=begin
正規表現内での不必要なエスケープに警告を出しませんか。

動機としては、/\uXXXX/の非互換性の話があります。

これは、Ruby 1.8において、不必要なエスケープであった/\u/が、
Ruby 1.9においては\uXXXXという構文が追加されたがために、
エラーが出たり意味が変わってしまったりしたという話でした。

このような不幸な出来事は、/\u/と書いたら警告を出すようにしていたら、
未然に防ぐことができたり、被害を減らすことができたかもしれません。

将来また別のエスケープ記法が追加される事は十分あり得る話だと思います。
その際に同じ不幸を繰り返さないように、警告を出すようにしませんか。

具体的には、文字クラス外の
g, i, j, k, l, m, o, p, q, y, E, F, H, I, J, K, L, N, O, P, Q, R, T, U, V, X, Y
と、文字クラス内の
g, i, j, k, l, m, o, p, q, y, z, A, B, E, F, G, H, I, J, K, L, N, O, P, Q, R, T, U, V, X, Y, Z
あたりになるでしょうか。

なお、現状では警告が出ないが、すでにエスケープ記法として用いている、
/\p/あたりは議論の余地のあるところかもしれません。
=end

Actions

Also available in: Atom PDF

Like0
Like0