ViVi SPR System build 0025 project:
Mail: Pass:
[ 新規アカウント作成 | パスワード忘れ ]
[ 新規SPR | SPR一覧 | コメント一覧 | statistics | 最新ビルド:2.10.106 | crash履歴 | SPR DB 一覧 | ユーザ一覧 | 使い方 | レポートの書き方 ] [ ViVi Home ]
一覧表示: [ New | Pend | Open | Reopen | Fixed | NPTF | 問題優先順 | 問題vote順 | 優先順 | vote順 | 重要度順 | Ref,ToDo | Help不備 | 対処順 ]
[ 前のSPR | 次のSPR ]
SPR#0104 0 point voted
状態:Close結果:対処優先度:C重要度:C
報告日:09/03/06build:2.09.18OS:WinXPby:ももたろ
概要::%s/(\w+)( .*)$/(\1)(\2)/の結果が不正
詳細:■ 操作前状態:
以下のようなファイルを開きます。

--
  1: aa bb
  2: aaa bb
--

■ 具体的操作:
:%s/(\w+)( .*)$/(\1)(\2)/
と入力します。

■ 操作後状態:
以下のような状態になってしまいます。

--
  1: (aaa)( bb)
  2: (aaa)(a b)
--

■ 期待する状態:
こうなるべきです。

--
  1: (aaa)( bb)
  2: (aaaa)( b)
--

■ 補足・再現条件:
$をつけない場合、意図する結果になるようです。
添付画像:
point:20対処日:09/03/07build:2.09.19close日:09/03/09
#1 つだ (09/03/07 21:04:27)
正しい結果は
--
  1: (aaa)( bb)
  2: (aaaa)( b)
--
ではなくて
--
  1: (aa)( bb)
  2: (aaa)( bb)
--
だよね?
#2 つだ (09/03/07 21:05:34)
あと、2行目で :s/(\w+)( .*)$/(\1)(\2)/ とした場合や、
2行目だけの場合は期待通りの結果になるみたい。
不思議だ・・・
#3 ももたろ (09/03/09 09:30:33)
2.09.20で直っていることを確認しました。

#1>
その通りでした。すみません。。。
#4 つだ (09/03/09 09:58:47)
>>2 いえいえ

あんど、早速の確認ありがとうございます。
原因は部分一致のための初期化忘れでした。(なので、1行だけの場合はうまくいってた)
$ が無い場合についても同様の問題が発生しうるので、後で同じように修正しておきます。
[ 新規SPR | SPR一覧 | コメント一覧 | statistics | 最新ビルド:2.10.106 | crash履歴 | SPR DB 一覧 | ユーザ一覧 | 使い方 | レポートの書き方 ] [ ViVi Home ]
一覧表示: [ New | Pend | Open | Reopen | Fixed | NPTF | 問題優先順 | 問題vote順 | 優先順 | vote順 | 重要度順 | Ref,ToDo | Help不備 | 対処順 ]


優先度:重要度(Severity):
 A:最優先で対処  A:通常操作でのクラッシュ・無限ループ
 B:必ず対処  B:特殊な条件、環境でのクラッシュ・無限ループ、非常に重要な動作不良
 C:原則対処  C:機能が動作しないなどの普通の動作不良
 D:簡単であれば対処 D:些細な動作不良で、簡単な代替手段があるもの
 E:NPTF候補 E:ミススペルや誤った文章など、機能そのものの動作に影響を与えない、さほど重要ではないもの
  H:ヘルプの不備
  M:メモリリーク
  P:パフォーマンス問題
  R:リファクタリング
  T:機能強化要望(Enhancement)、ToDo
  X:XT(eXtreme Toolkit)に由来する問題