Community
    • Login

    How to delete text after the 2nd specific character in each row

    Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
    16 Posts 5 Posters 3.3k Views
    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.
    • guy038G Offline
      guy038
      last edited by

      Hi, @crimson-virtuoso, @alan-kilborn, @ekopalypse and All,

      Alan, very informative post, indeed ! So, If I correctly understand what you said, this means that :

      • If the test, on present line 1816 of the FindReplaceDlg.cpp file, for a possible change of selection range, would have been absent, the \K regex feature would work, while doing a single replace operation, with the Replace button ?

      I backup your post’s link for future reference, if any question regarding the weird behavior of the \K feature ;-))

      Best Regards,

      guy0038

      Alan KilbornA 1 Reply Last reply Reply Quote 1
      • Alan KilbornA Offline
        Alan Kilborn @guy038
        last edited by

        @guy038

        Well, it wouldn’t be as simple as removing the indicated line, as that would break other functionality.
        Truly, though, I haven’t thought too much about it.
        While I can kinda read C++, and I can use the Visual Studio debugger to step through its code, it isn’t my strong suit.
        Hmm, maybe I don’t have a “strong suit”. (Is that a known expression?)
        I leave it to others, but I’m fairly confident in my analysis presented earlier about this; I spent a bit of time single-stepping through it and looking at it.

        1 Reply Last reply Reply Quote 2
        • Thomas 2020T Offline
          Thomas 2020 @Ekopalypse
          last edited by

          @Ekopalypse said in How to delete text after the 2nd specific character in each row:

          You can use find to jump through the matches but you cannot use
          replace while doing this.

          I can’t think of any better.
          It would be better to replace “^” with “\A”.

          ^((\w+ \| ){2})(.+)
          \1
          
          EkopalypseE 1 Reply Last reply Reply Quote 0
          • EkopalypseE Offline
            Ekopalypse @Thomas 2020
            last edited by

            @Pan-Jan said in How to delete text after the 2nd specific character in each row:

            I can’t think of any better.
            It would be better to replace “^” with “\A”.

            Why do you think so? What is the advantage of using \A instead of ^ in this case?

            1 Reply Last reply Reply Quote 0
            • Thomas 2020T Offline
              Thomas 2020
              last edited by

              If I wanted to swap lines one by one
              the pattern works from the cursor position.

              EkopalypseE 1 Reply Last reply Reply Quote 0
              • EkopalypseE Offline
                Ekopalypse @Thomas 2020
                last edited by

                @Pan-Jan

                the pattern works from the cursor position.

                that is correct but this means also that it can match the wrong parts.
                Assume the following ( | this should be the caret)

                string1 | stri|ng2 | string3 | string5744

                in that case it would handle string5744 as the match and NOT string3 | string5744

                1 Reply Last reply Reply Quote 1
                • Thomas 2020T Offline
                  Thomas 2020 @Crimson Virtuoso
                  last edited by

                  @Crimson-Virtuoso said in How to delete text after the 2nd specific character in each row:

                  string1 | string2 | string3 | string5744
                  string4001 | string2668 | string1234 | string496
                  string201 | string202 | string203 | string489

                  in this example there are 3 x |

                  EkopalypseE 1 Reply Last reply Reply Quote 0
                  • EkopalypseE Offline
                    Ekopalypse @Thomas 2020
                    last edited by

                    @Pan-Jan

                    I’m sorry, but I think I’m out.
                    If you think you’re gonna get anywhere with the way you communicate, good luck with that.
                    I won’t waste any more time trying to figure out what you might mean.

                    1 Reply Last reply Reply Quote 1
                    • Thomas 2020T Offline
                      Thomas 2020
                      last edited by

                      Schowek03.jpg

                      1 Reply Last reply Reply Quote -1
                      • Thomas 2020T Offline
                        Thomas 2020
                        last edited by

                        Schowek04.jpg

                        ^((\w+ \| ){2})(.+)
                        

                        can be replaced individually

                        1 Reply Last reply Reply Quote 0

                        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                        With your input, this post could be even better 💗

                        Register Login
                        • First post
                          Last post
                        The Community of users of the Notepad++ text editor.
                        Powered by NodeBB | Contributors