Loading ...
Sorry, an error occurred while loading the content.

Re: regex needed

Expand Messages
  • jia sun
    1.- Every time when a R UN in column 1 occurs, replace then the 5 digits ##### on column 14 (like 57075 in the first row) with SM##### SLA KSR-Netz SST
    Message 1 of 5 , Dec 28, 2012
    • 0 Attachment
      1.- Every time when a "R UN" in column 1 occurs, replace then the 5 digits ##### on column 14 (like 57075 in the first row) with "SM##### SLA KSR-Netz SST" (that would change the first row from "R UNZK904326 57075" to "R UNZK904326 SM57075 SLA KSR-Netz SST");

      [sunjia:]
      :g/^R UN/s/\d\{5}$/SM& SLA KSR-Netz SST/

      2.- For every row with "R UL" in column 1, replace then the 5 digits ##### on column 14 (like 57376 in the row 15) with "SM##### SLA KSR-Lief SST" (that would change the row 15 from "R ULZK908272 57376" to "R ULZK908272 SM57376 SLA KSR-Lief SST");

      [sunjia:]
      :g/^R UL/s/\d\{5}$/SM& SLA KSR-Lief SST/

      other lines will not be changed.


      2012/12/29 MacVlad <vlad.ghitulescu@...>
      Hello!


      I have a text-file that looks like this:

      ---
      R UNZK904326 57075
      P UNZK904385 57127
      P UNZK904328 57053
      P ULZK908062 57101
      P UNZK904322 56498
      R UNZK904386 57108
      P UNZK904288 56383
      P UNZK904397 56383
      P UNZK904444 56878
      R UNZK904465 57253
      R UNEK919821 57025
      R UNEK919745 57259
      R UNZK904527 55769
      R UNEK919814 55944
      R ULZK908272 57376
      R UNZK904471 56355
      R ULZK908371 55393
      R UNZK904574 56646
      R UNEK919701 56974
      R UNZK904565 57598
      R UNZK904603 57649
      R ULZK908326 57471
      R UNZK904588 57610
      R ULZK908324 57514
      R ULZK908307 57614
      P ULZK908369 57149
      R UNZK904603 57649
      R UNEK919933 57643
      P ULEK935569 56373
      P ULEK935571 57504
      P ULZK908295 56122
      P ULZK908484 57149
      P UNEK919781 56816
      P UNEK919785 56747
      P UNEK919959 56615
      P ULEK935884 56951
      P ULEK935886 56845
      P UNZK904559 57572
      R ULEK935659 57784
      R ULEK935727 56203
      R ULEK935729 56474
      R ULEK935860 57871
      R ULEK935938 57946
      R ULEK935866 57885
      R ULZK908389 57584
      R ULZK908389 57743
      R ULZK908397 57707
      R ULZK908401 57743
      R ULZK908477 57647
      R ULZK908505 57853
      R ULZK908508 57672
      R UNZK904601 57598
      R UNZK904597 56581
      R ULZK908545 57897
      R ULZK908270 57469
      R UNZK904619 57688
      V ULZK908382 57724
      V ULZK908431 57724
      R UNZK904746 56581
      R ULZK908686 57754
      R ULEK935997 56474
      R ULZK908690 57975
      R ULEK936068 57999
      R ULZK908692 57208
      R ULEK935991 57956
      R ULZK908696 57955
      R ULEK936078 57983
      R UNZK904463 55662
      R ULEK936070 56010
      P ULEK936122 56478
      R ULZK908377 57623
      P ULEK936126 57671
      P ULEK936136 56784
      P ULEK936148 57102
      R UNEK920127 57622
      R UNZK904680 57294
      P ULEK936158 56303
      R ULEK935862 57800
      R ULZK908515 57636
      R ULEK935862 58097
      R ULEK936166 57800
      R ULZK908377 57623
      ---

      I want to make the following changes:

      1.- Every time when a "R UN" in column 1 occurs, replace then the 5 digits ##### on column 14 (like 57075 in the first row) with "SM##### SLA KSR-Netz SST" (that would change the first row from "R UNZK904326 57075" to "R UNZK904326 SM57075 SLA KSR-Netz SST");

      2.- For every row with "R UL" in column 1, replace then the 5 digits ##### on column 14 (like 57376 in the row 15) with "SM##### SLA KSR-Lief SST" (that would change the row 15 from "R ULZK908272 57376" to "R ULZK908272 SM57376 SLA KSR-Lief SST");

      3.- Leave the others rows unchanged.

      Could you please help me with a regex in order to do this in VIM? Thank you!


      Regards,
      Vlad Ghitulescu

      --
      You received this message from the "vim_use" maillist.
      Do not top-post! Type your reply below the text you are replying to.
      For more information, visit http://www.vim.org/maillist.php

      --
      You received this message from the "vim_use" maillist.
      Do not top-post! Type your reply below the text you are replying to.
      For more information, visit http://www.vim.org/maillist.php
    • MacVlad
      Thanks, sunja, it works! ... -- You received this message from the vim_use maillist. Do not top-post! Type your reply below the text you are replying to. For
      Message 2 of 5 , Dec 28, 2012
      • 0 Attachment
        Thanks, sunja, it works!


        Am Samstag, 29. Dezember 2012 06:00:51 UTC+1 schrieb sunjia:
        > 1.- Every time when a "R UN" in column 1 occurs, replace then the 5 digits ##### on column 14 (like 57075 in the first row) with "SM##### SLA KSR-Netz SST" (that would change the first row from "R UNZK904326 57075" to "R UNZK904326 SM57075 SLA KSR-Netz SST");
        >
        >
        >
        > [sunjia:]
        > :g/^R UN/s/\d\{5}$/SM& SLA KSR-Netz SST/
        >
        > 2.- For every row with "R UL" in column 1, replace then the 5 digits ##### on column 14 (like 57376 in the row 15) with "SM##### SLA KSR-Lief SST" (that would change the row 15 from "R ULZK908272 57376" to "R ULZK908272 SM57376 SLA KSR-Lief SST");
        >
        >
        >
        >
        > [sunjia:]
        > :g/^R UL/s/\d\{5}$/SM& SLA KSR-Lief SST/
        >
        >
        >
        >
        > other lines will not be changed.
        >
        >
        >
        > 2012/12/29 MacVlad <vlad.gh...@...>
        >
        > Hello!
        >
        >
        >
        >
        >
        > I have a text-file that looks like this:
        >
        >
        >
        > ---
        >
        > R UNZK904326 57075
        >
        > P UNZK904385 57127
        >
        > P UNZK904328 57053
        >
        > P ULZK908062 57101
        >
        > P UNZK904322 56498
        >
        > R UNZK904386 57108
        >
        > P UNZK904288 56383
        >
        > P UNZK904397 56383
        >
        > P UNZK904444 56878
        >
        > R UNZK904465 57253
        >
        > R UNEK919821 57025
        >
        > R UNEK919745 57259
        >
        > R UNZK904527 55769
        >
        > R UNEK919814 55944
        >
        > R ULZK908272 57376
        >
        > R UNZK904471 56355
        >
        > R ULZK908371 55393
        >
        > R UNZK904574 56646
        >
        > R UNEK919701 56974
        >
        > R UNZK904565 57598
        >
        > R UNZK904603 57649
        >
        > R ULZK908326 57471
        >
        > R UNZK904588 57610
        >
        > R ULZK908324 57514
        >
        > R ULZK908307 57614
        >
        > P ULZK908369 57149
        >
        > R UNZK904603 57649
        >
        > R UNEK919933 57643
        >
        > P ULEK935569 56373
        >
        > P ULEK935571 57504
        >
        > P ULZK908295 56122
        >
        > P ULZK908484 57149
        >
        > P UNEK919781 56816
        >
        > P UNEK919785 56747
        >
        > P UNEK919959 56615
        >
        > P ULEK935884 56951
        >
        > P ULEK935886 56845
        >
        > P UNZK904559 57572
        >
        > R ULEK935659 57784
        >
        > R ULEK935727 56203
        >
        > R ULEK935729 56474
        >
        > R ULEK935860 57871
        >
        > R ULEK935938 57946
        >
        > R ULEK935866 57885
        >
        > R ULZK908389 57584
        >
        > R ULZK908389 57743
        >
        > R ULZK908397 57707
        >
        > R ULZK908401 57743
        >
        > R ULZK908477 57647
        >
        > R ULZK908505 57853
        >
        > R ULZK908508 57672
        >
        > R UNZK904601 57598
        >
        > R UNZK904597 56581
        >
        > R ULZK908545 57897
        >
        > R ULZK908270 57469
        >
        > R UNZK904619 57688
        >
        > V ULZK908382 57724
        >
        > V ULZK908431 57724
        >
        > R UNZK904746 56581
        >
        > R ULZK908686 57754
        >
        > R ULEK935997 56474
        >
        > R ULZK908690 57975
        >
        > R ULEK936068 57999
        >
        > R ULZK908692 57208
        >
        > R ULEK935991 57956
        >
        > R ULZK908696 57955
        >
        > R ULEK936078 57983
        >
        > R UNZK904463 55662
        >
        > R ULEK936070 56010
        >
        > P ULEK936122 56478
        >
        > R ULZK908377 57623
        >
        > P ULEK936126 57671
        >
        > P ULEK936136 56784
        >
        > P ULEK936148 57102
        >
        > R UNEK920127 57622
        >
        > R UNZK904680 57294
        >
        > P ULEK936158 56303
        >
        > R ULEK935862 57800
        >
        > R ULZK908515 57636
        >
        > R ULEK935862 58097
        >
        > R ULEK936166 57800
        >
        > R ULZK908377 57623
        >
        > ---
        >
        >
        >
        > I want to make the following changes:
        >
        >
        >
        > 1.- Every time when a "R UN" in column 1 occurs, replace then the 5 digits ##### on column 14 (like 57075 in the first row) with "SM##### SLA KSR-Netz SST" (that would change the first row from "R UNZK904326 57075" to "R UNZK904326 SM57075 SLA KSR-Netz SST");
        >
        >
        >
        >
        > 2.- For every row with "R UL" in column 1, replace then the 5 digits ##### on column 14 (like 57376 in the row 15) with "SM##### SLA KSR-Lief SST" (that would change the row 15 from "R ULZK908272 57376" to "R ULZK908272 SM57376 SLA KSR-Lief SST");
        >
        >
        >
        >
        > 3.- Leave the others rows unchanged.
        >
        >
        >
        > Could you please help me with a regex in order to do this in VIM? Thank you!
        >
        >
        >
        >
        >
        > Regards,
        >
        > Vlad Ghitulescu
        >
        >
        >
        > --
        >
        > You received this message from the "vim_use" maillist.
        >
        > Do not top-post! Type your reply below the text you are replying to.
        >
        > For more information, visit http://www.vim.org/maillist.php

        --
        You received this message from the "vim_use" maillist.
        Do not top-post! Type your reply below the text you are replying to.
        For more information, visit http://www.vim.org/maillist.php
      • MacVlad
        Thanks, Jack, this works too. Yes, I must check Friedl s book! Thanks again! ... -- You received this message from the vim_use maillist. Do not top-post!
        Message 3 of 5 , Dec 28, 2012
        • 0 Attachment
          Thanks, Jack, this works too.
          Yes, I must check Friedl's book!
          Thanks again!


          Am Samstag, 29. Dezember 2012 06:43:09 UTC+1 schrieb Jack Gates:
          > On Fri, Dec 28, 2012 at 11:28 PM, MacVlad <vlad.ghitulescu@...> wrote:
          >
          > > Hello!
          >
          > >
          >
          > >
          >
          > > I have a text-file that looks like this:
          >
          > >
          >
          > > ---
          >
          > > R UNZK904326 57075
          >
          > > P UNZK904385 57127
          >
          > > P UNZK904328 57053
          >
          > > P ULZK908062 57101
          >
          > > P UNZK904322 56498
          >
          > > R UNZK904386 57108
          >
          > > P UNZK904288 56383
          >
          > > P UNZK904397 56383
          >
          > > P UNZK904444 56878
          >
          > > R UNZK904465 57253
          >
          > > R UNEK919821 57025
          >
          > > R UNEK919745 57259
          >
          > > R UNZK904527 55769
          >
          > > R UNEK919814 55944
          >
          > > R ULZK908272 57376
          >
          > > R UNZK904471 56355
          >
          > > R ULZK908371 55393
          >
          > > R UNZK904574 56646
          >
          > > R UNEK919701 56974
          >
          > > R UNZK904565 57598
          >
          > > R UNZK904603 57649
          >
          > > R ULZK908326 57471
          >
          > > R UNZK904588 57610
          >
          > > R ULZK908324 57514
          >
          > > R ULZK908307 57614
          >
          > > P ULZK908369 57149
          >
          > > R UNZK904603 57649
          >
          > > R UNEK919933 57643
          >
          > > P ULEK935569 56373
          >
          > > P ULEK935571 57504
          >
          > > P ULZK908295 56122
          >
          > > P ULZK908484 57149
          >
          > > P UNEK919781 56816
          >
          > > P UNEK919785 56747
          >
          > > P UNEK919959 56615
          >
          > > P ULEK935884 56951
          >
          > > P ULEK935886 56845
          >
          > > P UNZK904559 57572
          >
          > > R ULEK935659 57784
          >
          > > R ULEK935727 56203
          >
          > > R ULEK935729 56474
          >
          > > R ULEK935860 57871
          >
          > > R ULEK935938 57946
          >
          > > R ULEK935866 57885
          >
          > > R ULZK908389 57584
          >
          > > R ULZK908389 57743
          >
          > > R ULZK908397 57707
          >
          > > R ULZK908401 57743
          >
          > > R ULZK908477 57647
          >
          > > R ULZK908505 57853
          >
          > > R ULZK908508 57672
          >
          > > R UNZK904601 57598
          >
          > > R UNZK904597 56581
          >
          > > R ULZK908545 57897
          >
          > > R ULZK908270 57469
          >
          > > R UNZK904619 57688
          >
          > > V ULZK908382 57724
          >
          > > V ULZK908431 57724
          >
          > > R UNZK904746 56581
          >
          > > R ULZK908686 57754
          >
          > > R ULEK935997 56474
          >
          > > R ULZK908690 57975
          >
          > > R ULEK936068 57999
          >
          > > R ULZK908692 57208
          >
          > > R ULEK935991 57956
          >
          > > R ULZK908696 57955
          >
          > > R ULEK936078 57983
          >
          > > R UNZK904463 55662
          >
          > > R ULEK936070 56010
          >
          > > P ULEK936122 56478
          >
          > > R ULZK908377 57623
          >
          > > P ULEK936126 57671
          >
          > > P ULEK936136 56784
          >
          > > P ULEK936148 57102
          >
          > > R UNEK920127 57622
          >
          > > R UNZK904680 57294
          >
          > > P ULEK936158 56303
          >
          > > R ULEK935862 57800
          >
          > > R ULZK908515 57636
          >
          > > R ULEK935862 58097
          >
          > > R ULEK936166 57800
          >
          > > R ULZK908377 57623
          >
          > > ---
          >
          > >
          >
          > > I want to make the following changes:
          >
          > >
          >
          > > 1.- Every time when a "R UN" in column 1 occurs, replace then the 5 digits ##### on column 14 (like 57075 in the first row) with "SM##### SLA KSR-Netz SST" (that would change the first row from "R UNZK904326 57075" to "R UNZK904326 SM57075 SLA KSR-Netz SST");
          >
          > >
          >
          > > 2.- For every row with "R UL" in column 1, replace then the 5 digits ##### on column 14 (like 57376 in the row 15) with "SM##### SLA KSR-Lief SST" (that would change the row 15 from "R ULZK908272 57376" to "R ULZK908272 SM57376 SLA KSR-Lief SST");
          >
          > >
          >
          > > 3.- Leave the others rows unchanged.
          >
          > >
          >
          > > Could you please help me with a regex in order to do this in VIM? Thank you!
          >
          >
          >
          > Do this on the first one:
          >
          >
          >
          > :%s/\(R UN\)\([A-Z]\{2}\d\{6}[ ]\)\(\d\{5}\)/\1\2SM\3 SLA KSR-Netz SST/g
          >
          >
          >
          > Alter the pattern to do the same thing on the second one.
          >
          >
          >
          > Check out Mastering Regular Expressions Third Edition by Jeffrey E. F. Friedl

          --
          You received this message from the "vim_use" maillist.
          Do not top-post! Type your reply below the text you are replying to.
          For more information, visit http://www.vim.org/maillist.php
        Your message has been successfully submitted and would be delivered to recipients shortly.