perl 正则表达式/^\s*(.*?)\s*\=\s*\"(.*)\"/是什么意思?
openINPUT,"c:\\cellopt\\query_reg\\db.ini";while(<INPUT>){chomp;if(/^\s*(.*?)\s*\=\s*...
open INPUT, "c:\\cellopt\\query_reg\\db.ini";
while(<INPUT>){
chomp;
if (/^\s*(.*?)\s*\=\s*\"(.*)\"/){
$$1 = $2;
}
}
close INPUT;
原程序执行有效.这个段落是原程序一部分,我查看过,原样复制过来,没有问题的. 展开
while(<INPUT>){
chomp;
if (/^\s*(.*?)\s*\=\s*\"(.*)\"/){
$$1 = $2;
}
}
close INPUT;
原程序执行有效.这个段落是原程序一部分,我查看过,原样复制过来,没有问题的. 展开
5个回答
展开全部
if (/^\s*(.*?)\s*\=\s*\"(.*)\"/) #匹配文件中每一行第一个字符串且该字符串要符合这样的规则:是连续的几个相同字符=连续的几个相同字符 如aaa=aaa 或者a=bbb或者 $$$=%%%%
$$1 = $2; # 将第一个匹配的字符串设置为变量对它赋值为等号右边的字符串
如: $aaa="aaa"或者$a="bbb"
希望能满意 呵呵
$$1 = $2; # 将第一个匹配的字符串设置为变量对它赋值为等号右边的字符串
如: $aaa="aaa"或者$a="bbb"
希望能满意 呵呵
参考资料: perl编程24学时教程
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
/^\s*(.*?)\s*\=\s*\"(.*)\"/
文件每次读一行,上述正则表达式默认匹配$_变量,主要是为了匹配ini文件格式,该表达式匹配格式为:
空格+任意的主键值,也可没有+空格=空格+要有双引号括起来的内容
例:
no = "1234"
= "2345"
注意上面的空格个数
文件每次读一行,上述正则表达式默认匹配$_变量,主要是为了匹配ini文件格式,该表达式匹配格式为:
空格+任意的主键值,也可没有+空格=空格+要有双引号括起来的内容
例:
no = "1234"
= "2345"
注意上面的空格个数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这段perl脚本是有问题的,要想打印出真正的$符号,必须要用到转义符\,所以应改写成
if (/^\s*(.*?)\s*\=\s*\"(.*)\"/){
\$$1 = $2;
至于含义,我认为应该是:
然后把其中每一行 xxxx xxxx="BxxxBxxBx" 的内容
赋值变量$xxxx xxxx=BxxxBxxBx,我在perl 5.8.6中试过
if (/^\s*(.*?)\s*\=\s*\"(.*)\"/){
\$$1 = $2;
至于含义,我认为应该是:
然后把其中每一行 xxxx xxxx="BxxxBxxBx" 的内容
赋值变量$xxxx xxxx=BxxxBxxBx,我在perl 5.8.6中试过
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将db.ini文件的内容读出来。
然后把其中每一行 AAA=BBB 的内容
赋值变量$AAA=BBB
然后把其中每一行 AAA=BBB 的内容
赋值变量$AAA=BBB
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询