I want to search replace & strings in thousands of wavefront *.mtl files to add many new Texture links. Is this even possible with Notepad++ regex? I´ve already altered these files very often with regex, but this task is way over my head!

At the current state I got many Materialparts in every file looking like this:

newmtl Material__28
Ns 0.000000
︙
Kd 1.000000 1.000000 1.000000
Ks 0.000000 0.000000 0.000000
Ke 0.000000 0.000000 0.000000

map_Kd textures\wall_exterior_wood_02.png


where the dots represent text that I don't want to change
(and that doesn't contain the string map_Kd).

And afterwards it should contain the NRM & Spec PNGs named exactly like the first map_Kd.

Example:

newmtl Material__28
Ns 0.000000
︙
Kd 1.000000 1.000000 1.000000
Ks 0.000000 0.000000 0.000000
Ke 0.000000 0.000000 0.000000

map_Kd   textures\wall_exterior_wood_02.png
map_bump textures\wall_exterior_wood_02_nrm.png
map_bump textures\wall_exterior_wood_02_nrm alternative.png
map_Ks   textures\wall_exterior_wood_02_spec.png


I've added spaces to the map lines for clarity.
Important is that the naming of the PNGs should be the same except for the prefixes "map_bump" and "map_ks" and the postfixes "_nrm", "_nrm alternative", and "_spec".

Use ctrl+h (replace)

Select "Regular Expression" radio button in the Search Mode box in the bottom left (making sure the matches newline tickbox is unticked)

Find:

map_Kd\s+(\S+)\.png

Replace:

map_Kd \1.png\n map_bump \1_nrm.png\n map_bump \1_nrm_alternative.png\n mapKs \1_spec.png

The find expression looks for "map_Kd" followed by one or more spaces ("\s+") then keeps one or more non-space characters ("(\S+)") until it hits ".png"

The replace puts the string you kept in wherever "\1" appears. I've also included "\n" newlines and spacing to align things as in your example.