Hello vinoth.ree,
With warnings:
use strict;
use warnings;
while (<DATA>)
{
s/(@Filetyp\s*?:)/\1c/;
print;
}
__DATA__
@header_start
@Titel : init
@Filename : test.c
@Filetyp :
@Version : 0001
@Produkt : xx
@delivery : xx
@date : 20160610
@header_end
Output:
0:54 >perl 1895_SoPW.pl
Possible unintended interpolation of @Filetyp in string at 1895_SoPW.p
+l line 18.
\1 better written as $1 at 1895_SoPW.pl line 18.
Global symbol "@Filetyp" requires explicit package name (did you forge
+t to declare "my @Filetyp"?) at 1895_SoPW.pl line 18.
Execution of 1895_SoPW.pl aborted due to compilation errors.
17:41 >
Perl sees @Filetyp as an (empty) array. Escape the sigil (and change \1 to $1):
s/(\@Filetyp\s*?:)/$1 c/;.
Output:
17:44 >perl 1895_SoPW.pl
@header_start
@Titel : init
@Filename : test.c
@Filetyp : c
@Version : 0001
@Produkt : xx
@delivery : xx
@date : 20160610
@header_end
17:44 >
Hope that helps,
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|