notepad++ find number greater than a specific number

后端 未结 2 1119
谎友^
谎友^ 2020-12-18 05:22

I have logs with some random numbers.

What I want to do is find numbers greater than a specific number, eg : find all number > 1234567.

Can

2条回答
  •  北海茫月
    2020-12-18 06:27

    You could use Notepad++'s Python Script plugin. Not the best solution, but it works!

    1. Install Python Script plugin, from Plugin Manager or from the official website.
    2. Then go to Plugins > Python Script > New Script. Choose a filename for your new file (eg find_numbers.py) and copy the code that follows.
    3. Run Plugins > Python Script > Scripts > find_numbers.py and a new window will show the matched numbers.
    from re import finditer
    
    number = 1234567
    
    console.clear()
    console.show()
    content = editor.getText()
    for row, line in enumerate(content.split('\n')):
        for m in re.finditer(r'[0-9]+', line):
            if int(m.group(0)) > number:
                console.write('row %d, col %d-%d: %s\n' % (row, m.start(), m.end(), m.group(0)))
    

    So for example take this text:

    This is a test 1234568
    with asome pretty big numbers 0 1234567
    Can anybody help?
    999999999999 99999999
    123
    

    The above solution will return you this:

    row 0, col 15-22: 1234568
    row 3, col 0-12: 999999999999
    row 3, col 13-21: 99999999
    

    You can obviously change the script to output the information in any way you prefer.

提交回复
热议问题