のような番号があり600000ます。2桁ごとにスペースを挿入したい。どうすればいいですか?結果は になります60 00 00。
4 に答える
            7        
        
		
12345なるべきなら、12 34 5私はお勧めします
s/..(?!\z)\K/ /sg
は(?!\z)、末尾にスペースを追加しないようにします。
12345になる必要がある場合は1 23 45、お勧めします
s/(?!^)(?=(?:..)+(?!.))/ /sg
(?!^)先頭にスペースを追加しないようにします。
これはあまり効率的ではありません。入力の方が効率的かもしれません。reverse最初のソリューションを使用してから、出力を使用してreverseください。
于 2013-01-29T20:05:49.650   に答える
    
    
            3        
        
		
これを試して:
$number = '600000';
$number =~ s/(\d{2})(?!$)/$1 /g;
print $number;
(\d{2})「2桁の数字」を意味します。(?!$)数字の後にスペースが必要ないため、「文字列の末尾が直後でない限り」を意味します。
于 2013-01-29T19:36:29.487   に答える
    
    
            2        
        
		
別のオプションは次のとおりです。
use strict;
use warnings;
my $number = 600000;
my $spacedNum = join ' ', $number =~ /..?/g;
print $spacedNum;
出力:
60 00 00
    于 2013-01-29T20:19:45.613   に答える