#!/usr/bin/perl -w # 把所有 "星期幾" 與 "幾月" 的英文全部改成中文. # 要處理星期與月份名稱, 本範例不是最好的方法. 詳見 perldoc POSIX # http://www.cyut.edu.tw/~ckhung/b/pl/ use strict; my ( %weekday, # "星期幾" 轉數字對照表 %month, # "月份" 轉數字對照表 $i, $key ); %weekday = ( "Mon" => '一', "Tue" => '二', "Wed" => '三', "Thu" => '四', "Fri" => '五', "Sat" => '六', "Sun" => '日' ); %month = ( "Jan" => '一', "Feb" => '二', "Mar" => '三', "Apr" => '四', "May" => '五', "Jun" => '六', "Jul" => '七', "Aug" => '八', "Sep" => '九', "Oct" => '十', "Nov" => '十一', "Dec" => '十二' ); while () { foreach $key (keys %weekday) { $_ =~ s/\b$key\b/星期$weekday{$key}/ig; } foreach $key (keys %month) { $_ =~ s/\b$key\b/$month{$key}月/ig; } # \b 表示 boundary, 避免代換到 # 一長串英文字當中的 $key. print $_; # 不必加 \n, 因為先前沒有 chomp }