如下爲網站答案原有形式:數組
九、高校對師資博士後有哪些福利學習
A、等同於博士直接入職待遇網站
B、所在城市基金委會提供一部分福利3d
C、分房code
D、直接送錢blog
答案:ABit
而我想要的答案形式:class
九、高校對師資博士後有哪些福利
等同於博士直接入職待遇
所在城市基金委會提供一部分福利select
#!/usr/bin/env perl use strict; use warnings; use autodie; open my $answers,"<","answer.txt"; #讀入的文件 open my $answers_fix,">","answer_fix.txt"; #修正的答案文件 my %answer_number = ( "A" => 0, "B" => 1, "C" => 2, "D" => 3 ); #每一個選項對應的數組下標 my @str_number; #記住選擇題的選項內容(通常爲四個) while(<$answers>){ if(/^\d+、/){ #匹配題目標題,標題通常爲(數字加、)如:一、 print $answers_fix $_; }elsif(/^[A-D]、(.*)/s){ #匹配某個具體的選項,其選項頭通常爲(字母加、)如:A、# 模式s,讓通配符.號能夠匹配換行符 push @str_number, $1; }elsif(/^答案:([A-D]+)/){ #解析答案 my @selects = split (//, $1); #得到答案數組,如ABC,能夠獲得一個[A, B, C]的數組 print $answers_fix map $str_number[$answer_number{$_}], @selects; #把每一個正確選項,存入修正答案的文件 print $answers_fix "\n"; #在題目的最後增長一個空行,使看起來更加順眼 @str_number = (); #清空選項內容數組 } }