diff --git a/lib/src/rules/missing_whitespace_between_adjacent_strings.dart b/lib/src/rules/missing_whitespace_between_adjacent_strings.dart
index 0ef9f63..65922b1 100644
--- a/lib/src/rules/missing_whitespace_between_adjacent_strings.dart
+++ b/lib/src/rules/missing_whitespace_between_adjacent_strings.dart
@@ -60,10 +60,7 @@
     // skip regexp
     if (node.parent is ArgumentList) {
       final parentParent = node.parent.parent;
-      if (parentParent is InstanceCreationExpression &&
-              parentParent
-                      .constructorName.staticElement.enclosingElement.name ==
-                  'RegExp' ||
+      if (_isRegExpInstanceCreation(parentParent) ||
           parentParent is MethodInvocation &&
               parentParent.realTarget == null &&
               const ['RegExp', 'matches']
@@ -104,6 +101,15 @@
   bool _endsWithWhitespace(String value) => _whitespaces.any(value.endsWith);
   bool _startsWithWhitespace(String value) =>
       _whitespaces.any(value.startsWith);
+
+  static bool _isRegExpInstanceCreation(AstNode node) {
+    if (node is InstanceCreationExpression) {
+      var constructorElement = node.constructorName.staticElement;
+      return constructorElement != null &&
+          constructorElement.enclosingElement.name == 'RegExp';
+    }
+    return false;
+  }
 }
 
 const _whitespaces = [' ', '\n', '\r', '\t'];
diff --git a/test/rules/missing_whitespace_between_adjacent_strings.dart b/test/rules/missing_whitespace_between_adjacent_strings.dart
index 3c2e48a..dd89402 100644
--- a/test/rules/missing_whitespace_between_adjacent_strings.dart
+++ b/test/rules/missing_whitespace_between_adjacent_strings.dart
@@ -18,6 +18,7 @@
   f('long line\t' 'is long'); // OK
 
   f(RegExp('(\n)+' '(\n)+' '(\n)+')); // OK
+  new Unresolved('aaa' 'bbb'); // OK
   matches('(\n)+' '(\n)+' '(\n)+'); // OK
 }
 
