読者です 読者をやめる 読者になる 読者になる

稲沢市よりお届けしてます。

Perlをはじめとしたプログラミング周りのあれこれについて。Perl界のモブキャラとして暗躍します(謎)。

Perlで複数行の置き換えをやってみたよ

mをsにしたら結構サクッと置き換えもできちゃった。

てへっ。

#!/usr/bin/perl
# 
# 複数行の置き換えを行うスクリプト-2
# 2011.10.29_scripted by perl48

use strict;
use warnings;

my $multiple_data;

foreach my $data (<DATA>) {
    $multiple_data .= $data
}

#print $multiple_data;

# <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">.<?php  をマッチさせる
# htmlはスラッシュが多いので、s#pattern#pattern2#s という感じでデリミタを # にしてみる
# 改行一文字を . で表すための修飾子 /s をつける
if ($multiple_data =~ s#<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">.<\?php##s ){

    #print $&;
    print $multiple_data;
}

__DATA__
<?
//絵文字
include_once 'include/commons.php';
//ヘッダ情報
include_once 'include/content_type.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php include ('include/analytics.php'); ?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<?php include ('include/head.php'); ?>
</head>