无法在perl中拆分字符串-变得不匹配(在正则表达式中;在m/error中标记为(-)
下面是我的代码无法在perl中拆分字符串-变得不匹配(在正则表达式中;在m/error中标记为(-),perl,split,Perl,Split,下面是我的代码 $var = ' "jjjjjjjj&Q_30006_47=540IT%20(540%2FOR%2FHPSC%2FD%2F02%2F11&Q_30006_4=&Q_30006_6=12&Q_30006_7=&Q_30006_" &'; ($temp1,$temp2) = split($var,"&"); print $temp1; 我需要去 $temp1=“jjjjj 和 $temp2作为第一个&
$var = ' "jjjjjjjj&Q_30006_47=540IT%20(540%2FOR%2FHPSC%2FD%2F02%2F11&Q_30006_4=&Q_30006_6=12&Q_30006_7=&Q_30006_" &';
($temp1,$temp2) = split($var,"&");
print $temp1;
我需要去
$temp1=“jjjjj
和
$temp2作为第一个&之后字符串的剩余部分
我由于字符串中的“(”而出错
有谁能告诉我如何分割这个吗。
谢谢!!我认为您的参数顺序有误。模式应该是首先:
($temp1,$temp2) = split("&", $var);
但是,这将在所有&
字符上拆分。您可能正在查找此字符(2是限制):
我认为您的参数顺序是错误的。模式应该是第一个:
($temp1,$temp2) = split("&", $var);
但是,这将在所有&
字符上拆分。您可能正在查找此字符(2是限制):
是的,我调用split函数的方式是错误的。谢谢,您的代码工作正常!!我更喜欢编写
split(/&/,$var)
,以提醒您第一个参数是正则表达式(像split(“?”,$var)
之类的东西会出错)是的,我调用split函数的方式是错误的。谢谢,你的代码工作了!!我更喜欢写split(/&/,$var)
,作为提醒,第一个参数是正则表达式(类似split(“?”,$var)
的东西会出错),将来你应该首先参考手册(perldoc.perl.org)如果您不确定如何使用特定函数,以后如果您不确定如何使用特定函数,应首先查阅手册(perldoc.perl.org)。
($temp1,$temp2) = split '&', $var, 2;