開発環境
- OS X Lion - Apple(OS)
- BBEdit(Text Editor)
- プログラミング言語:Perl
『初めてのPerl 第6版』(Randal L. Schwartz, Tom Phoenix, brian d foy 共著、近藤 嘉雪 訳、オライリー・ジャパン、2012年、ISBN978-4-87311-567-2)の9章(正規表現によるテキスト処理)、9.6(練習問題)3を解いてみる。
その他参考書籍
3.
コード(BBEdit)
sample.pl
#!/usr/bin/env perl use strict; use warnings; use utf8; use 5.016; binmode STDOUT, ':utf8'; binmode STDIN, ':utf8'; my $name = 'test.txt'; open my $in_fh, "<", $name or die; open my $out_fh, ">", "${name}.out" or die; while(<$in_fh>){ s/fred/Larry/gi; print $out_fh $_; } close $in_fh; close $out_fh;
入出力結果(Terminal)
$ ./sample.pl test.txt $ cat test.txt A a kamimura's blog http://sitekamimura.blogspot.com KMI http://www.mkamimura.com Fred FRED fred frederick Alfred fred flintstone Mr. Slate Mississippi Bamm-Bamm wilama barney wilma and fred fred and wilma Wilma and Fred Fred and Wilma wilma&fred Mrs. Wilma Flintstone I saw Wilma yesterday I, Wilma! Z llama $ cat test.txt.out A a kamimura's blog http://sitekamimura.blogspot.com KMI http://www.mkamimura.com Wilma Wilma Wilma Wilmaerick AlWilma Wilma flintstone Mr. Slate Mississippi Bamm-Bamm wilama barney Fred and Wilma Wilma and Fred Fred and Wilma Wilma and Fred Fred&Wilma Mrs. Fred Flintstone I saw Fred yesterday I, Fred! Z llama $
pythonの場合。
コード(BBEdit)
sample.py
#!/usr/bin/env python3.3 #-*- coding: utf-8 -*- import re name = 'test.txt' with open(name, 'rb') as in_f: with open("{0}.out".format(name), 'wb') as out_f: for line in in_f: line = re.sub(b"fred", b"\0", line, flags=re.I) line = re.sub(b"wilma", b"Fred", line, flags=re.I) line = re.sub(b"\0", b"Wilma", line, flags=re.I) out_f.write(line)
入出力結果(Terminal)
$ ./sample.py test.txt $ cat test.txt.out A a kamimura's blog http://sitekamimura.blogspot.com KMI http://www.mkamimura.com Wilma Wilma Wilma Wilmaerick AlWilma Wilma flintstone Mr. Slate Mississippi Bamm-Bamm wilama barney Fred and Wilma Wilma and Fred Fred and Wilma Wilma and Fred Fred&Wilma Mrs. Fred Flintstone I saw Fred yesterday I, Fred! Z llama $
0 コメント:
コメントを投稿