添加 html <p> 标签到格式化文件
add html <p> tag to a formatted file
我有一个格式化的文本文件,如下所示:
<P> <P>
paragraph 1 blablablabla
<P> <P>
paragraph 2 blablablabla
<P> <P>
paragraph 3 blablablabla
<P> <P>
paragraph 4 blablablabla
我需要将此文件转换为格式正确的 html 文件,如下所示:
<p>
paragraph 1 blablablabla
</p>
<p>
paragraph 2 blablablabla
</p>
<p>
paragraph 3 blablablabla
</p>
<p>
paragraph 4 blablablabla
</p>
目前我使用的是 perl 脚本,但它不起作用:
my $p = 0;
while(my $text = <IN>)
{
if($text =~ /(<P>\t<P>)/)
{
$p++;
if($p % 2 == 0){
print "</p>"."\n";
}
else{
print "<p>"."\n";
}
}
}
我将整个文件读入缓冲区并应用正则表达式:
my $buffer = "";
while(<>) {
$buffer .= $_;
}
$buffer =~ s|<P>\s+<P>\s(.*?)\n|<p>\n\n</p>\n|gs;
print "$buffer\n";
使用此代码:
my $p = 0;
while ( my $text = <IN> ) {
if ( $text =~ /(<P>\s*<P>)/ ) {
if ( $p == 0 ) {
$text =~ s{$&}{<P>};
}
else {
$text =~ s{$&}{</P>\n<P>};
}
$p++;
}
print $text;
}
print "</P>\n";
基本上它所做的是将任何 <P> <P>
更改为 </P>\n<P>
,但第一次出现除外,在这种情况下,替换将仅为 <P>
。在 if
条件中使用 \s*
而不是 \t
也将处理 tab
.
以外的空格
我有一个格式化的文本文件,如下所示:
<P> <P>
paragraph 1 blablablabla
<P> <P>
paragraph 2 blablablabla
<P> <P>
paragraph 3 blablablabla
<P> <P>
paragraph 4 blablablabla
我需要将此文件转换为格式正确的 html 文件,如下所示:
<p>
paragraph 1 blablablabla
</p>
<p>
paragraph 2 blablablabla
</p>
<p>
paragraph 3 blablablabla
</p>
<p>
paragraph 4 blablablabla
</p>
目前我使用的是 perl 脚本,但它不起作用:
my $p = 0;
while(my $text = <IN>)
{
if($text =~ /(<P>\t<P>)/)
{
$p++;
if($p % 2 == 0){
print "</p>"."\n";
}
else{
print "<p>"."\n";
}
}
}
我将整个文件读入缓冲区并应用正则表达式:
my $buffer = "";
while(<>) {
$buffer .= $_;
}
$buffer =~ s|<P>\s+<P>\s(.*?)\n|<p>\n\n</p>\n|gs;
print "$buffer\n";
使用此代码:
my $p = 0;
while ( my $text = <IN> ) {
if ( $text =~ /(<P>\s*<P>)/ ) {
if ( $p == 0 ) {
$text =~ s{$&}{<P>};
}
else {
$text =~ s{$&}{</P>\n<P>};
}
$p++;
}
print $text;
}
print "</P>\n";
基本上它所做的是将任何 <P> <P>
更改为 </P>\n<P>
,但第一次出现除外,在这种情况下,替换将仅为 <P>
。在 if
条件中使用 \s*
而不是 \t
也将处理 tab
.