2012-01-08 44 views
1

说我有一个名为hello.txt的文件,其中包含“Hello World!”。 如果我想制作一个脚本来打开文件并阅读内容(我知道该怎么做),并在字符串中添加了内容,我该如何去做这件事?Perl字符串Modyifing

例如:Hello World将在字符串/内容的开始插入'..',然后每隔2个字符插入一次,除了结尾处。还要考虑内容不会总是“Hello World”。

回答

2

既然你已经知道如何从文件中读取,我把它你唯一真正的问题是如何将任何给定的字符串的每2个字符后添加..

my $string = "Hello World"; 
$string =~ s/^|(..)(?!$)/$1../g; 
print "$string\n"; 

输出:

..He..ll..o ..Wo..rl..d 

虽然我无法想象这将如何有用。

正则表达式查找字符串或字符串末尾没有跟随的字符串的开始,使用负向预测,并用任何捕获的字符替换所有匹配,然后是两个句点。

+0

非常感谢。还有一个问题,说HelloWorld是全部附加的,这将输出..在最后。有没有办法来防止这种情况? – 2012-01-08 21:29:58

+0

@DavidG:在我写下原始答案之前,我错过了那部分内容。这是避免与字符串结尾添加到我的修订答案的负面预测。 – flesk 2012-01-08 21:36:23