diff --git a/src/js/resources/scriptlets.js b/src/js/resources/scriptlets.js index a460f3fb7..36d521923 100644 --- a/src/js/resources/scriptlets.js +++ b/src/js/resources/scriptlets.js @@ -598,8 +598,12 @@ function parsePropertiesToMatch(propsToMatch, implicit = '') { if ( propsToMatch === undefined || propsToMatch === '' ) { return needles; } const options = { canNegate: true }; for ( const needle of safe.String_split.call(propsToMatch, /\s+/) ) { - const [ prop, pattern ] = safe.String_split.call(needle, ':'); + let [ prop, pattern ] = safe.String_split.call(needle, ':'); if ( prop === '' ) { continue; } + if ( pattern !== undefined && /[^$\w -]/.test(prop) ) { + prop = `${prop}:${pattern}`; + pattern = undefined; + } if ( pattern !== undefined ) { needles.set(prop, safe.initPattern(pattern, options)); } else if ( implicit !== '' ) {