perl中匹配字符串的第一个单词

时间:2013-07-17 05:07:07

标签: perl

我有一个文本文件,我想使用substring函数找到基于其偏移值的字符串。

我的输入文件如下:

[1] Line one
[2] Line two
[3] Line three

我的代码是:

use strict;
use warnings;

my $f2 = 'Test.txt';
my ($text, $str);
  open (FH1, $f2) || die;
  $text = join '', <FH1>;
  $str  = substr($text, 16, 5);
  print $str,"\n";

需要找到匹配文本中作为第一个单词出现的数字。

输出应该看起来像

[2]--Line

匹配的字符串是“Line”,该行的第一个单词是[2]。

1 个答案:

答案 0 :(得分:0)

有关substr功能的信息,请参阅以下文档:

http://perldoc.perl.org/functions/substr.html

此功能的一般形式是:

    substr EXPR,OFFSET,LENGTH

同时注意到你正在使用substr($ text,16,5),但是菱形逐行读取文件(因为你在标量上下文中使用它,所以16来自哪里?你必须开始从一开始你的偏移。有关Perl的运算符的信息,请参考perlop:

http://perldoc.perl.org/perlop.html