我在向函数传递参数时遇到问题,而被调用的函数没有将控制权返回给最初调用它的函数.基本上,我正在读取一个文本文件,其中包含用户名和密码到数组中.然后使用foreach循环我将用户名和密码传递给另一个函数,但这永远不会返回,只执行一组arugments;
sub batch {
open(my $in, "<", "$ARGV[0]") or die "Can't open $ARGV[0]: $!";
#Read file contents into an array.
@listOfUsers = <$in>;
foreach $listOfUsers (@listOfUsers) {
#Regex to check if txt file conforms to correct syntax.
if ($listOfUsers !~ /([a-zA-Z]{1}[a-zA-Z0-9]{3,40})\s[a-zA-Z]{1}[a-zA-Z0-9]{3,40}/) {
print "Please ensure that line $listOfUsers in $ARGV[0] is of the following syntax:\n";
print "\n<USERNAME> <PASSWORD>\n";
exit(0);
} else {
#split string and call AddUser function
my ($username, $password) = split(" ",$listOfUsers);
AddUser($username, $password);
}
}
}
sub …Run Code Online (Sandbox Code Playgroud) 我在Perl中有一个数组,其中每个元素都包含一个用空格分隔的用户名和密码.即
@listOfUser = {testuser password1, testuser2 password2, testuser3 password3};
Run Code Online (Sandbox Code Playgroud)
我想循环遍历数组并将每个元素拆分为两个字符串.例如,我想获取数组中的第一个元素,并将其分配给名为username的变量以及名为passwd的变量的相应密码.
基本上我的问题是我想将数组元素拆分为两个字符串!
我正在使用perl.我们一般来说吧.我有一个包含几个元素的数组.
每个元素的格式如下:sometext mypassword
基本上每个元素都包含一个用户名,后跟一个空格,然后是一个密码.
我希望能够抓住每个元素并拆分元素
my $username = sometext
my $password = password
Run Code Online (Sandbox Code Playgroud)
然后我将使用foreach循环将两个字符串传递给函数