我正在尝试在 perl 中流式传输文件并对行进行标记并包含标记。
我有:
while( $line =~ /([\/][\d]*[%].*?[%][\d]*[\/]|[^\s]+|[\s]+)/g ) {
my $word = $1;
#...
}
但是当令牌中没有空格时它不起作用。
例如,如果我的行是:
$line = '/15%one (1)(2)%15/ is a /%good (1)%/ +/%number(2)%/.'
我想将该行拆分为:
$output =
[
'/15%one (1)(2)%15/',
' ',
'is',
' ',
'a',
'/%good (1)%/',
' ',
'+',
'/%number(2)%/',
'.'
]
做这个的最好方式是什么?