- タグの階層は1つのみ(入れ子は考えない)
- タグの属性(id属性など)はあってもよい。
上記の条件でよければ、簡単なスクリプト言語で対応できます。
例として、perl のスクリプトを載せておきます。
[sample.in]
<day id="01">5日
<month>4月
[convert.pl]
@in_text = <>;
@out_text = ();
for (@in_text) {
my $line = $_;
chomp $line;
my ($whole,$tag) = ($line =~ m/(<([^> ]+)[^>]*>[^<>]+)/);
push @out_text, "$whole</$tag>";
}
print "$_\n" for @out_text;
[出力結果]
$ perl convert.pl sample.in
<day id="01">5日</day>
<month>4月</month>
* 制約
- 1行につき開きタグは1つのみ
- タグで囲っている文字列は途中で改行されていない
例)以下のような入力は正しく処理できない。
<day>5日<month>4月
<day>
6日
<month>4
月
以下のような入力は正しく処理できる。
<day>5日
<month>4月
<day>6日
<month>4月
--
[追記] プログラムに誤りがあったので修正しました。また、id属性などに対応しました。