我有一个字符串,想要得到它的一部分。假设我有一个字符串,说“set aid ODU4-4-3”。我只想从中取出ODU。而字符串的模式不是固定的。它可能类似于ODU,ODU4,ODUX。我没有得到这个

$aid = "ODU4-9-1";
$aid =~ /(\w)+\d*-\d-\d/;
print " value is $1"

输出量
value is ODU4

我只需要将值设为ODU,而字符串模式可能会更改。它可能仅是ODU-4-3,也可以是ODU4-4-3。

最佳答案

@ M42的答案版本,返回所有匹配项:

my @allmatches = $aid =~ /([A-Z]{3}).*?\-\d\-\d/;

10-05 22:06