加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl – 如何在文本字符串中扩展变量?

发布时间:2020-12-15 23:25:01 所属栏目:大数据 来源:网络整理
导读:我有一个Perl脚本,我从一个包含变量名的配置文件中读取一行.当我将该行读入变量时,不会放入需要用给定值替换的变量名.我使用 Config::Tiny来访问我的配置文件.例: 配置文件 thing=I want to $this 脚本 $this = "run";my $thing = $Config-{thing};print $t
我有一个Perl脚本,我从一个包含变量名的配置文件中读取一行.当我将该行读入变量时,不会放入需要用给定值替换的变量名.我使用 Config::Tiny来访问我的配置文件.例:

配置文件

thing=I want to $this

脚本

$this = "run";
my $thing = $Config->{thing};
print $thing;

打印$thing出来,因为我想$this.我想让它出来,因为我想跑.

解决方法

好的,所以你希望Perl评估你的字符串而不是打印它.

本Perl常见问题实际上涵盖了这一点:
How can I expand variables in text strings?

简而言之,您可以使用以下正则表达式:

$string =~ s/($w+)/$1/eeg;

小心:从脚本外部评估任意字符串是一个主要的安全风险.一个优秀的黑客可以利用它来在您的服务器上执行任意代码.

Brian的FAQ答案涵盖了其中一些内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读