I would recommend using two files (yourcode.pl file.orig > file.new, for example).

Unless you have fixed size records or $replace_string is smaller than what was matched, you are going to want to use two files or read the entire file into memory. If your replacement string is larger than your match, you will end up overwriting future portions of your file when you write the modified record back to your original file.

As an example, if your replacement string is foobar, and your data file looks like:

sdpRowId:blah sdpRowId:bar
assuming that you have the file read/write code correct (it is not at this point in time), after the first pass, you would end up with something along the lines of:
sdpRowId: foobar RowId:bar
Note that the string 'sdp' at the beginning of the second line was overwritten.

If you do insist on not using two files (or loading the entire data set into memory and rewriting the original file), you will probably need to find out about seek and tell.

Update: Included an example

--MidLifeXis


In reply to Re: How to open file in Edit mode by MidLifeXis
in thread How to open file in Edit mode by pawank86

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.