Replace numbers in scattered strings to sequential numbers..



  • OK so the problem is as follows:
    There are strings with random values that are scattered throughout the file which i want to change to be sequential.

    Find What : “This value”:.*,
    Will find these lines but i dont know the regex to replace the numbers or how to tell it to stop after say only 20 instances.
    . Will find the end of the string and * will allow any value, a wild card (See regex wildcards)

    IE;
    “Some random thing here”:29,
    “Another random thing here”:29,
    “Something here”:29,
    “Random thing here”:29,
    "This value":39, <!-- I want to change these to be sequential -->
    “Some here”:29,
    “Other thing here”:29,
    “Thing here”:29,
    “Some random thing here”:59,
    “Another random thing here”:23,
    “Something here”:43,
    “Random thing here”:2,
    "This value":12, <!-- I want to change these to be sequential -->
    “Some here”:18,
    “Other thing here”:63,
    “Thing here”:63,
    …<!-- A few thousand lines of code here–>

    Thanks in advance to any replies, it isnt anything important but I hope it helps others who might be interested.
    I may not reply for some time.



  • @Ryad-Arlan ,

    Search/replace (regex) does not know how to count. So it cannot increment your replacement, and it cannot count how many replacements it has done.

    To do that, you need a programming language. If you use a plugin like PythonScript, you can leverage the full power of the Python language and give it the access to the contents of the Notepad++ editor window. If you’re willing to go that route, you can search the forum for add_1 and find a lot of examples for the “add_1” style of pythonscript search-and-increment-replace. For stopping after 20 instances, you can look at the optional final argument of the editor.rereplace(search, replace[, flags[, startPosition[, endPosition[, maxCount]]]]) method.

    if you have trouble customizing what you’ve seen elsewhere for your specific situation, show us what you’ve tried, and we might be able to point out where it’s gone wrong.