Fix inline asm() syntax register mapping regex to not get confused by substrings. Fixes the use of asm() in the case there are more than one input variable to the asm routine.

Consider the following asm code:

var str = Module.utf32_to_jsstring($0);Module.print(str);Module.jsstring_to_utf32(str, $1);

The variable substitution regex would first search-replace '$0' -> '$163', giving

var str = Module.utf32_to_jsstring($163);Module.print(str);Module.jsstring_to_utf32(str, $1);

Then it would search-replace '$1' -> '$164', giving

var str = Module.utf32_to_jsstring($16463);Module.print(str);Module.jsstring_to_utf32(str, $164);

whereas it should have produced

var str = Module.utf32_to_jsstring($163);Module.print(str);Module.jsstring_to_utf32(str, $164);

The fixed regex performs essentially a 'whole-word' search on the source string to match, making sure that a digit does not follow the regex.