2011-04-27 82 views
1

我有一个文本文件,像这样:substr的反义词是什么?

dave ran very quickly 
dan very slowly ran 

我做一个正则表达式查找单词“跑”,但我还需要知道它开始(它是字符6第一种情况下,在第二种情况是17)。

我有(虽然不是很多):

for(@lines){ 

if(/ran/){ 
# find where ran is so we can continue parsing 

} 

} 
+2

Perl中substr的反义词是串联运算符'。' 。提示 - 选择一个更好的问题标题。 – 2011-04-27 00:08:04

+2

{耸耸肩} rtsbus? – Axeman 2011-04-27 00:39:07

+3

'substr'的​​* ** **实际上是'substr'本身 - 用作一个l值。前者从更大的弦中汲取某些东西;后者果酱中有东西。 – FMc 2011-04-27 02:37:31

回答

9

这很容易:

my $ran_pos = $-[0]; 

@-阵列的详细说明,请参见perlvar手册页。

+0

确实很容易。我感到惭愧。 – user657821 2011-04-27 00:15:28

2

指数STR,SUBSTR将返回一个字符串中的子串的位置。