diff --git a/lib/util/package-rules.ts b/lib/util/package-rules.ts
index 08d7dac9c43d944e572aadd603de77f6b9773d6f..a9e4171b5f99360acbb45b8c8adf7946e22c9b7c 100644
--- a/lib/util/package-rules.ts
+++ b/lib/util/package-rules.ts
@@ -2,6 +2,7 @@ import minimatch from 'minimatch';
 import { logger } from '../logger';
 import * as versioning from '../versioning';
 import { mergeChildConfig, PackageRule, UpdateType } from '../config';
+import { regEx } from './regex';
 
 // TODO: move to `../config`
 export interface Config extends Record<string, any> {
@@ -140,7 +141,7 @@ function matchesRule(inputConfig: Config, packageRule: PackageRule): boolean {
     // name match is "or" so we check patterns if we didn't match names
     if (!isMatch) {
       for (const packagePattern of packagePatterns) {
-        const packageRegex = new RegExp(
+        const packageRegex = regEx(
           packagePattern === '^*$' || packagePattern === '*'
             ? '.*'
             : packagePattern
@@ -166,7 +167,7 @@ function matchesRule(inputConfig: Config, packageRule: PackageRule): boolean {
   if (excludePackagePatterns.length) {
     let isMatch = false;
     for (const pattern of excludePackagePatterns) {
-      const packageRegex = new RegExp(
+      const packageRegex = regEx(
         pattern === '^*$' || pattern === '*' ? '.*' : pattern
       );
       if (depName && depName.match(packageRegex)) {