|
标量是一个多行的字符串.现在想匹配到 haha@163.com.cn
和SetEnv SINASRV_DB_NAME searchbetav 里面的这个数据库的名字:searchbetav
(把这些放入一个文件中一行行匹配我会,这里要希望从一个标量匹配)
我写的匹配:
my $dbname='searchbetav';
if ($aa=~m/ServerAdmin\s+(\w+\d*\@staff\.sina\.com\.cn).*?(SetEnv.*SINASRV.*DB.*NAME\s+)($dbname$)/s)
{
print "$1*\n";
print "$2**\n";
print "$3***\n";
print "$4====\n";
}
各位高手给看看有上面问题 ,怎么才能把两个匹配上.
$aa='ServerName search.beta.v.sina.com.cn
ServerAlias search.video.sina.com.cn
ServerAdmin haha@163.com.cn
DocumentRoot /data1/www/htdocs/search.beta.v.sina.com.cn/
ErrorLog /data1/www/logs/search.video.sina.com.cn-error_log
CustomLog /data1/www/logs/search.video.sina.com.cn-access_log
SetEnv SINASRV_DATA_DIR "/data1/www/data/search.beta.v.sina.com.cn/"
SetEnv SINASRV_CACHE_DIR "/data1/www/cache/search.beta.v.sina.com.cn/"
SetEnv SINASRV_PRIVDATA_DIR "/data1/www/privdata/search.beta.v.sina.com.cn/"
SetEnv SINASRV_APPLOGS_DIR "/data1/www/applogs/search.beta.v.sina.com.cn/"
SetEnv SINASRV_DATA_URL "http://search.beta.v.sina.com.cn/data"
SetEnv SINASRV_CACHE_URL "http://search.beta.v.sina.com.cn/cache"
#SetEnv SINASRV_NDATA_DIR "/datanfs1/sinasrv/www/ndata/search.beta.v.sina.com.cn/"
SetEnv SINASRV_NDATA_CACHE_URL "http://cache.mars.sina.com.cn/nd/searchbetav/"
SetEnv SINASRV_DB_HOST m3380i.mars.grid.sina.com.cn
SetEnv SINASRV_DB_HOST_R s3380i.mars.grid.sina.com.cn
SetEnv SINASRV_DB_PORT 3380
SetEnv SINASRV_DB_NAME searchbetav
SetEnv SINASRV_DB_USER searchbetav
SetEnv SINASRV_DB_PASS 1wSeH45tGc
SetEnv SINASRV_DB_PORT_R 3380
SetEnv SINASRV_DB_NAME_R searchbetav
SetEnv SINASRV_DB_USER_R searchbetav_r
SetEnv SINASRV_DB_PASS_R T5Gbv3edC45f
SetEnv SINASRV_MEMCACHED_KEY_PREFIX "search_beta_v-"'; |
|