如何从perl中的字符串变量复制模式

use*_*645 3 perl

我需要一个句子的内容复制之间=)用perl.比如说:

 $temp="06/18/2012 08:35:35(PID=2150)";
Run Code Online (Sandbox Code Playgroud)

现在我需要复制变量2150之间=和之间)的值$temp2.

fle*_*esk 7

使用正则表达式很容易实现:

my ($temp2) = $temp =~ /=(\d+)\)/;
Run Code Online (Sandbox Code Playgroud)

只需在=和之间寻找一系列数字\).必须转义右括号,因为括号用于捕获组.

您必须括$temp2在括号中的原因是因为您需要强制列表上下文来返回匹配的结果.在标量上下文中,您只需获得匹配数; 在这种情况下为1.