Let assume that I run a cmake with option `-DNETGEN_VERSION_GIT="v6.2.2204"` (or without this option at all) to avoid calling `git` which won't work when I've downloaded sources from GitHub as `.zip` file.
If I try to compile sources and run it, it fails with error like:
```
libc++abi: terminating with uncaught exception of type std::invalid_argument: stoi: no conversion
```
after some digging I've discovered that `netgen_version.hpp` looks like:
```
#ifndef NETGEN_VERSION_HPP_INCLUDED
#define NETGEN_VERSION_HPP_INCLUDED
#define NETGEN_VERSION "6.2.0-v6.2.0.0-v6.2.0.0"
#define NETGEN_VERSION_MAJOR 6
#define NETGEN_VERSION_MINOR 2
#define NETGEN_VERSION_PATCH 0
#define NETGEN_VERSION_TWEAK v6.2.0.0
#define NETGEN_VERSION_HASH "v6.2.0.0"
#endif // NETGEN_VERSION_HPP_INCLUDED
```
This is happened because `string(REGEX REPLACE` copied original string to target and replaces it by regex. If regex doesn't match => it still copied an original value.
So, this commit prevented this mess from happened.