perl foreach 把条件的字符串添加到数组中
时间: 2023-10-03 19:02:25 浏览: 161
你可以使用Perl中的foreach循环和if语句将符合条件的字符串添加到数组中。下面是一个示例代码:
```
#!/usr/bin/perl
use strict;
use warnings;
my @arr = ("hello", "world", "this", "is", "a", "test");
my @new_arr;
foreach my $elem (@arr) {
if ($elem =~ /is/) {
push(@new_arr, $elem);
}
}
foreach my $elem (@new_arr) {
print("$elem ");
}
print("\n");
```
输出结果为:
```
is
```
在这个示例中,我们首先定义了数组@arr,然后定义了一个空数组@new_arr。接下来,我们使用foreach循环遍历数组@arr中的元素,并使用if语句检查每个元素是否包含字符串"is"。如果包含,则使用push函数将其添加到数组@new_arr中。最后,我们使用foreach循环遍历数组@new_arr中的元素,并将它们打印出来。
相关问题
perl foreach 把数组中的字符串 通过join方法连接起来
你可以使用Perl中的join函数将数组中的字符串连接起来,然后使用foreach循环遍历数组。下面是一个示例代码:
```
#!/usr/bin/perl
use strict;
use warnings;
my @arr = ("hello", "world", "this", "is", "a", "test");
my $str = join(" ", @arr);
foreach my $elem (@arr) {
print("$elem ");
}
print("\n");
print("$str\n");
```
输出结果为:
```
hello world this is a test
hello world this is a test
```
在这个示例中,我们首先使用join函数将数组@arr中的元素连接起来,使用空格作为分隔符,然后将结果存储在变量$str中。接下来,我们使用foreach循环遍历数组@arr中的元素,并将它们打印出来。最后,我们打印出变量$str,以检查连接结果是否正确。
perl 把数组中字符串取出来 替换
在 Perl 中,可以使用 `s///` 替换操作符和 `foreach` 循环来遍历数组中的字符串,进行替换操作。以下是一个简单的示例:
```
my @array = ("foo", "bar", "baz");
foreach my $str (@array) {
$str =~ s/o/u/;
print "$str\n";
}
```
输出结果为:
```
fu
bur
buz
```
在上面的代码中,首先定义了一个包含三个字符串的数组 `@array`。然后使用 `foreach` 循环遍历数组中的每个字符串,将其中的字符 `o` 替换为 `u`,并输出替换后的字符串。注意,在替换操作中使用的是 `$str` 变量,而不是数组 `@array`。
如果要将数组中所有字符串中的某个子串替换为新的字符串,可以使用类似下面的代码:
```
my @array = ("foo bar", "hello world", "baz qux");
foreach my $str (@array) {
$str =~ s/bar/baz/;
print "$str\n";
}
```
输出结果为:
```
foo baz
hello world
baz qux
```
在上面的代码中,将数组中所有字符串中的 `bar` 替换为 `baz`,并输出替换后的字符串。
阅读全文