#!/usr/bin/env perl use v5.12; use warnings; $_ = 123456789; s/ (?<=[0-9]) # 前に1文字以上の数字があり (?=(?:[0-9]{3})+ # 後ろに3文字の数字のセットが1個以上あり $) # 後ろに余計なものが続かない位置にマッチ /,/gx; # マッチした位置にカンマを挿入 say; # 123,456,789 $_ = 12345678; s/(?<=[0-9])(?=(?:[0-9]{3})+$)/,/g; say; # 12,345,678
上記正規表現は、『詳説 正規表現 第3版』p.62より