diff --git a/packages/create-react-app/index.js b/packages/create-react-app/index.js
index 1ea4f108cc0a216849fb25af1167e84211e7d65c..d6478a13545ae2f7fc7cec5ef0ad066c629e08b8 100644
--- a/packages/create-react-app/index.js
+++ b/packages/create-react-app/index.js
@@ -153,7 +153,9 @@ function getInstallPackage(version) {
 // Extract package name from tarball url or path.
 function getPackageName(installPackage) {
   if (installPackage.indexOf('.tgz') > -1) {
-    return installPackage.match(/^.+\/(.+)-.+\.tgz$/)[1];
+    // The package name could be with or without semver version, e.g. react-scripts-0.2.0-alpha.1.tgz
+    // However, this function returns package name only wihout semver version.
+    return installPackage.match(/^.+\/(.+?)(?:-\d+.+)?\.tgz$/)[1];
   } else if (installPackage.indexOf('@') > 0) {
     // Do not match @scope/ when stripping off @version or @tag
     return installPackage.charAt(0) + installPackage.substr(1).split('@')[0];