web-dev-qa-db-ja.com

カンマ区切りファイルから最後の列を削除します

Replace and findで正規表現を使用してnotepad ++のコンマ区切りファイルから最後の列を削除するにはどうすればよいですか?

これは私のファイルです:

2010-09-02,148.67,31.34,0,0,31.34
2010-09-03,149.52,31.24,0,0,31.24
...

このパターンを各行の終わり、基本的には最後の列、または最後のコンマの後のすべてで見つけようとしています。次に例を示します。

,31.34
,31.34

これは私がこれまでに持っているものですが、それは行全体を選択しているようです:

.*,\d+.\d+

,31.34を選択して削除したいだけです。つまり、何も置き換えません。

2
HattrickNZ

次の正規表現をテストしましたが、機能します。

検索:(.+),.+?$
次のように置き換えます:\1

正規表現の説明:

(.+),.+?$
(  )      = this is a capture group. Its content will be \1, \2, \3 in order of appearance.
 .+       = This selects everything greedy mode
    ,     = until it finds the last comma.
(.+),     = get everyting except the last , and store it in \1.
     .+?  = Get everything, non greedy.
        $ = until we find the end of the string.

あなたの質問の正規表現とは異なり、これはコンテンツに関してはすべてが機能する限り機能します
,で区切られています。

4
LPChip