IMO the best tool for this job is JavaScript, not RegEx.
I was pleasantly surprised to find that the month name need only be matched using the first 3 characters. So, I'm not sure what language you are using, but this seems to work for the two examples. I would expect JavaScript to use the local language as installed on your Mac.
See if this works for you.
Example Output
MACRO: Get Month Number from Month Name [Example]
~~~ VER: 1.0 2019-10-18 ~~~
Requires: KM 8.2.4+ macOS 10.11 (El Capitan)+
(Macro was written & tested using KM 9.0+ on macOS 10.14.5 (Mojave))
DOWNLOAD Macro File:
Get Month Number from Month Name [Example].kmmacros
Note: This Macro was uploaded in a DISABLED state. You must enable before it can be triggered.
JXA Script
(function (){
'use strict';
var kme = Application("Keyboard Maestro Engine");
var monthName = kme.getvariable("Month_Name") || "KM Var is missing/empty";
var monthIndex = new Date('1 ' + monthName + ' 2000').getMonth() + 1;
if (monthIndex) {
return monthIndex.toString().padStart(2, '0');
}
else {
throw new Error('[ERROR] Invalid Month Name: ' + monthName);
}
})();