我不是正则表达式的专家,无法确定我应该改变的地方。未转义的左大括号正则表达式错误
我得到这两个错误的正则表达式
转义的左括号已被弃用,通过正则表达式通过;标记为<-- HERE
m/^(.*?)(\\)?\${ <-- HERE ([^{}]+)}(.*)$/
at /usr/share/perl5/Debconf/Question.pm line 72.
正则表达式中未转义的左大括号已被弃用,通过正则表达式传递;在/usr/share/perl5/Debconf/Config.pm线30
在m/\${ <-- HERE ([^}]+)}/
标志着<-- HERE
当我跳到线72这是我看到
while ($rest =~ m/^(.*?)(\\)?\${([^{}]+)}(.*)$/sg) {
让我只是猜测,因为你错过了任何有用的上下文:你在你的系统上使用了一个更新的Perl版本,然后是系统附带的版本,现在你看到了由此造成的问题。现在,这些只是警告,如果你不了解Perl,你可以忽略它。在任何情况下,最好使用系统附带的原始Perl用于系统附带的任何脚本。如果你了解Perl,你可以通过转义正则表达式中的'{',即'\ {'。 –
非常感谢!这工作。是的,我做了一个sudo apt-get升级,并在我的Ubuntu 14.04上安装了一些新的软件包。我正在慢慢尝试着逐个修复它们...... T_T这是否会影响我的桑巴舞或者ldap? – TheCabDriverCheatedMeToday
由于不知道究竟发生了什么变化,因此未知它们可能具有哪些影响。 –