Copy only the search expression results from a textfile in notepad++

后端 未结 1 1965
星月不相逢
星月不相逢 2020-12-25 15:18

I have a source code and want simply to copy the strings which I find with an regular expression.

Just like:

asdladhsfhjk-hello1-asdlkajhsd
asdsa-hel         


        
相关标签:
1条回答
  • 2020-12-25 15:40

    [update: see extended instructions below if you are working with a file that has 1. lines with and lines without the pattern and 2. you want to erase all lines without the pattern and 3. only preserve the pattern from the remaining lines ].

    Do a regular expression Find and Replace, with the search pattern as ^.*?(-hello[0-9]+-).*$ and the replacement as \1.

    find and replace dialog in notepad++

    1. That finds a non-greedy match (match will be as small as it can) at the beginning of the line for anything, like so: ^.*?.
    2. Then your pattern is in (), so that it can be captured in a capture group.
    3. Then we match the rest of the line .*$.
    4. The \1 is the contents of the capture group matched in the ()s.

    Here's how to delete non-pattern lines and preserve only the patterns from lines with the pattern.

    1. Bookmark all lines with the pattern:

    enter image description here

    1. Delete the un-bookmarked lines, so that now you only have lines with the pattern.

    enter image description here

    1. Now you can run the regex find and replace as above (first part of answer) to keep only the pattern from the remaining lines.
    0 讨论(0)
提交回复
热议问题