首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

Perl怎么匹配N多元字符转义字符

2012-03-22 
Perl如何匹配N多元字符转义字符?我想去匹配一个字符串“abcdefghijklmnOPQRSTUVWXYA1234567890,.()!@#%^*{}

Perl如何匹配N多元字符转义字符?
我想去匹配一个字符串“abcdefghijklmnOPQRSTUVWXYA   1234567890,.()!@#%^*{}[]-=+?> '*测试”(双引号之间的),代码如下


$real= "abcdefghijklmnOPQRSTUVWXYA   1234567890,\.\(\)!\@#%^*\{}\[]-=\+\?> \ '\*测试 ";
$expect= ',\.\(\)!\@#%^*\{}\[]-=\+\?> \ '\* ';
if   ($real=~/$expect/)
{
    print   "YES\n ";
}
else
{
    print   "NO\n ";
}
print   "$real\n ";
print   "$expect\n ";


无论怎样,我都不能得到YES的结果!欲哭无泪~
问题好像出在下面几个字符:   .   (   )   !

[解决办法]

$real= "abcdefghijklmnOPQRSTUVWXYA 1234567890,\.\(\)!\@#%^*\{}\[]-=\+\?> \ '\*测试 ";
$expect= '\,\.\(\)\!\@\#\%\^\*\{\}\[\]\-\=\+\?\> \ '\* ';
if ($real=~/$expect/)
{
print "YES\n ";
}
else
{
print "NO\n ";
}
print "$real\n ";
print "$expect\n ";

把所有的符号都加上转义。

热点排行