使用regex Perl读取文件

时间:2014-04-18 08:36:12

标签: regex perl file

我有一个配置文件名camera.start。配置如下所示:

video4linux2 -i /dev/video0 -vcodec

我的问题是,我们怎样才能在Regex中阅读 / dev / video0 ?但要知道, / dev / video0 的值总是在变化。所以我无法使用 [characters] 修饰符读取该文件。有关如何使用正则表达式读取此配置文件的任何建议?任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:4)

不需要正则表达式,只需拆分空格字符:

my $data = 'video4linux2 -i /dev/video0 -vcodec';

my @values = split(' ', $data);

print @values[2];

答案 1 :(得分:3)

my $str = 'video4linux2 -i /dev/video0 -vcodec';

my $dev = (split ' ', $str)[2];

print $dev;

答案 2 :(得分:2)

可以通过拆分''caracter。

来解析字符串

但如果你还想要正则表达式,那么你就是

my $str = "video4linux2 -i /dev/video0 -vcodec";
($i) = ($str =~ m/video4linux2 -i (\S+) -vcodec/);

print "$i\n";  # '/dev/video0'