The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
# encoding: EUCJP
# This file is encoded in EUC-JP.
die "This file is not encoded in EUC-JP.\n" if q{¤¢} ne "\xa4\xa2";

use Char;
print "1..1\n";

my $__FILE__ = __FILE__;

my $anchor1 = q{\G(?:[\x81-\x9F\xE0-\xFC][\x00-\xFF]|[\x00-\xFF])*?};
my $anchor2 = q{\G(?(?!.{32766})(?:[\x81-\x9F\xE0-\xFC][\x00-\xFF]|[\x00-\xFF])*?|(?(?=[\x00-\x7F]+\z).*?|.*?[^\x81-\x9F\xE0-\xFC](?:[\x81-\x9F\xE0-\xFC][\x00-\xFF])*?))};

if (($] >= 5.010001) or
    (($] >= 5.008) and ($^O eq 'MSWin32') and (defined($ActivePerl::VERSION) and ($ActivePerl::VERSION > 800))) or
    (($] =~ /\A 5\.006/oxms) and ($^O eq 'MSWin32'))
) {
    # avoid: Complex regular subexpression recursion limit (32766) exceeded at here.
    local $^W = 0;

    if (((('A' x 32768).'B') !~ /${anchor1}B/b) and
        ((('A' x 32768).'B') =~ /${anchor2}B/b)
    ) {
        # do test
    }
    else {
        for my $tno (1..1) {
            print "ok - $tno # SKIP $^X $0\n";
        }
        exit;
    }
}
else {
    for my $tno (1..1) {
        print "ok - $tno # SKIP $^X $0\n";
    }
    exit;
}

my $data = <<END;
<dl>
<td>aaa</td>
<dd>12345¥½</dd>
</dl>
END
$data = $data x int(40000 / length($data));

my $bbb = <<END;
<dl>
<td>bbb</td>
<dd>6789</dd>
</dl>
END

my $ccc = <<END;
<dl>
<td>ccc</td>
<dd>6789</dd>
</dl>
END

my $data2 = "$data$bbb";
$data2 =~ s|<td>bbb</td>|<td>ccc</td>|;

if ($data2 eq "$data$ccc") {
    print "ok - 1 $^X $__FILE__\n";
}
else {
    print "not ok - 1 $^X $__FILE__\n";
}

__END__

http://okwave.jp/qa/q6674287.html
Perl ¥Õ¥¡¥¤¥ë°ìµ¤Æɤ߸å¤ÎÀµµ¬É½¸½¤Ë¤Ä¤¤¤Æ
Perl¤Ç°Ê²¼¤ÎÄ̤ꡢ
html¥Õ¥¡¥¤¥ë¤òÁ´¤ÆÆɤ߹þ¤ó¤À¸å¤ËÀµµ¬É½¸½¤òÅö¤Æ¤¿¤¤¤Î¤Ç¤¹¤¬¡¢¤¦¤Þ¤¯¤¤¤­¤Þ¤»¤ó¡£
¶²½Ì¤Ç¤¹¤¬¡¢¸¶°ø¤ò¤´Â¸ÃΤÎÊý¤¤¤é¤Ã¤·¤ã¤¤¤Þ¤·¤¿¤é¶µ¤¨¤Æ失¤Þ¤»¤ó¤Ç¤·¤ç¤¦¤«¡£
¤Þ¤¿¡¢Â¾¤ËÎɤ¤²ò·èÊýË¡¤¬¤¢¤ê¤Þ¤·¤¿¤é¶µ¤¨¤Æ失¤ë¤È¹¬¤¤¤Ç¤¹¡£
¢¨PC´Ä¶­¤Ïwindows7, perl5.12¤Ç¤¹¡£¾ðÊó¤ËÉÔ­¤¬¤´¤¶¤¤¤Þ¤·¤¿¤é¤´»ØŦ²¼¤µ¤¤¡£

-----
#--test.html(º¸Â¦¤Î¿ô»ú¤Ï¹Ô¿ô)
000001 <dl>
000002 <dt>aaa</dt>
000003 <dd>12345</dd>
000004 </dl>

¡ÊÃæά¡Ë

120001 <dl>
120002 <dt>bbb</dt>
120003 <dd>6789</dd>
120004 </dl>

#--test.pl
open IN , "test.html";
local $/ = undef;
$data = <IN>;
close IN;

$data =~ s|<td>bbb</td>|<td>ccc</td>|;
print "$data\n";
-----

¥Õ¥¡¥¤¥ë¤Î»Ï¤á¤ÎÊý¤À¤ÈÅö¤¿¤ë¤Î¤Ë¡¢¸åȾ¤Ç¤ÏÅö¤¿¤ê¤Þ¤»¤ó¡£
Àµµ¬É½¸½¤ÎÂоݤȤ·¤ÆÂ礭¤¹¤®¤ë¤ó¤Ç¤·¤ç¤¦¤«¡¦¡¦¡¦¡£

$data =~ s|<td>aaa</td>|<td>ccc</td>|;
¤Ï¡¢Åö¤¿¤ê¤Þ¤¹¤¬

$data =~ s|<td>bbb</td>|<td>ccc</td>|;
¤À¤ÈÅö¤¿¤ê¤Þ¤»¤ó¡£

¤É¤¦¤¾¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£