Search & Replace Action using Regex

Can anyone point out my error? I'm trying to prefix the "full path" to the filename. Looks similar to the last example here which works per line? --> https://wiki.keyboardmaestro.com/action/Search_and_Replace
Thanks.

Regex Replace.kmmacros (2.1 KB)

Hmm, this is odd. To prefix lines with regex, all you should need to do is search for the start of the line with ^ and replace it with your desired string. This works in BBEdit:

and Regex101: https://regex101.com/r/oIybja/1

30%20AM

but does not seem to work in KM 8.2.4:

Regex Replace.kmmacros (2.9 KB)
image

Results

~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed.jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(1).jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(2).jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed.png
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(3).jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(4).jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(5).jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(6).jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(7).jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(8).jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(9).jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(10).jpg
~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpgunnamed(11).jpg

@peternlewis, can you weigh in on this? Am I missing something, or is this some sort of bug?

The replace string is a multi-line, carriage return delimited string:

~/Downloads/
unnamed(1).jpg
unnamed(2).jpg
unnamed.png
unnamed(3).jpg
unnamed(4).jpg
unnamed(5).jpg
unnamed(6).jpg
unnamed(7).jpg
unnamed(8).jpg
unnamed(9).jpg
unnamed(10).jpg
unnamed(11).jpg\1

1 Like

Well, that would definitely explain it :man_facepalming:
I'm not sure how that replacement string got in there, as I could have sworn I typed in ~/Downloads/ manually, but I'm glad to see this was just good old fashioned user error. Of course it works as intended once the replace string is correct:

14%20AM

Sorry to take time out of your day for something so trivial! At least this ended up being a good example of why making the replace field expandable to show every part of the string would be a good addition to a future version of KM, right? :sweat_smile: