正则表达式
以前用PHP的正则/^Mozilla\/4.0 \(compatible; MSIE ([0-9\.]+); Windows/si放到文件里了,但是PERL需要自己写边界符所以我需要提取表达式的内容(^Mozilla\/4.0 \(compatible; MSIE ([0-9\.]+); Windows)也就是需要去掉前面的/和后面的/si,我用/^\/([^\/si|\/s|]+)[\/s|\/si]$/si结果$1什么也没有
[解决办法]
其实perl中不一定要用 / 做边界符:
'/^Mozilla\/4.0 \(compatible; MSIE ([0-9\.]+); Windows/si' =~ m!^/\^(.*)/.*$!;
如果你一定要用 / 做边界符:
/^Mozilla\/4.0 \(compatible; MSIE ([0-9\.]+); Windows/si' =~ /^\/\^(.*)\/.*$/;
取$1即可。