Community

    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search

    RegEx selective replace

    Help wanted · · · – – – · · ·
    2
    3
    83
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Forum Bloke
      Forum Bloke last edited by

      Hi

      I’m hoping someone can help as I’ve been struggling with this all day!

      I have some text files that I want to do some search/replace on but I can’t work out how to reference selectively what I’m trying to replace.

      Taking this as the test:

      IF Thirty THEN
      DRAW("               Twenty, Thirty, Forty, Fifty")
      ENDIF
      

      I would like to replace the Thirty on line that includes DRAW with ‘30’ but not on the IF line. How can I do this please.

      I’m tearing my hair out!

      Many thanks

      Rob

      PeterJones 1 Reply Last reply Reply Quote 0
      • PeterJones
        PeterJones @Forum Bloke last edited by

        @Forum-Bloke ,

        • FIND WHAT = (?-s)(DRAW.*)Thirty
        • REPLACE WITH = $1Replacement
        • MODE = regular expression

        Requires DRAW to come before the Thirty, on the same line.

        • (?-s) = dot wildcard does not match space
        • (DRAW.*) = literal text DRAW followed by 0 or more characters (.*), all put into group#1
        • Thirty = literal text you want to replace
        • $1 = in the replacement, this will include the contents of group#1, which is everything from DRAW (including the DRAW) to just before the Thirty
        • Replacement = the word you want to insert instead of Thirty

        ----
        Official Notepad++ Searching/Regex Docs = https://npp-user-manual.org/docs/searching/#regular-expressions

        1 Reply Last reply Reply Quote 2
        • Forum Bloke
          Forum Bloke last edited by

          @PeterJones said in RegEx selective replace:

          (?-s)(DRAW.*)Thirty

          Many thanks!

          1 Reply Last reply Reply Quote 1
          • First post
            Last post
          Copyright © 2014 NodeBB Forums | Contributors