Perl模式匹配-动态语言程序设计6
成语文本四字成语[成语拼音空格隔离12345代表四声和轻音]
只打印出中文成语
if(/(.+)\[/){
}
或者用替换
s/(.*)\[.*\]/$1/;
s/\[.*\]//;
print "$_\n";
取得文本中拼音表
if(/.*\[(.*)\]/){
@PY=split(" ",$1);
foreach (@PY){
$hash{$_}++;
}
}
foreach (sort keys %hash){
print "$_\n";
}
#一句中文本
<Eng>英文翻译
<PY>汉语分词[拼音空格分离]
<Wav>0001Ex.wav
取得拼音表
if(/<PY>(.*)/){
@Item=$1=~/\S+/;
foreach(@Item){
if(/(.+)\[/){
$hash{$1}++;
}
}
}
foreach (sort keys %hash){
print "$_\n";
}
@Item=$1=~/(\S+)\[/g;
foreach(@Item){
$hash{$_}++;
}
~/([a-z]+)\d/g;
@pinyins=/[a-z]+[1-5]\d/g;
/(.*)\[.*2\]/or/(.*)\[.*4\]/
if(/<Eng>(.*)/){
@Item=$1=~/\S+/g;
foreach(@Item){
tr/[a-z]/[A-Z]/;
S/[\.\"\{\}]//g;
$hash{$_}++;
}
}
练习9 统计语料中的声调出现情况
练习10 从语料中生成索引为拼音的字典
0 评论 :
发表评论