Hello Comunity, i read about ATL Class Library that they habve an functions for regular expressions in VC6, if this is true, where can i download this library, please post an link(url) for me!
Hello, ok, i try to use this from boost, i search an download
link for this package, but i dont find it on the page from boost!
Any one knows from wich site i have to download
it I try this site: http://www.boost.org/libs/regex/doc/index.html, but here is nothing to see! To move my project now to VC8 is not a good
idea now, i finish my project soon, after them i can transport it to
VC8.
With VC6 you are, as far as I can tell, best off using third party libraries such as Boost's Regex. Brian may be right about the C++ conformance breaking that library in more or less subtle ways, though.
Thanx for answers, yes, i have VS8 installed and they have this files for regexp., but my project is in VS6 wit VC6 written, and i like to now hot to inplemented this libraries in VS6 projects
ATL
has the CAtlRegExp class, defined in atlrx.h to support regular
expressions. The VC6 version of ATL doesn't have it, VS2003 and
VS2005 do. You can't download ATL, it is only available with a
retail version.
I would say that there should be nothing in the ATL regexp classes that should be version specific; by this I mean that the code should be pretty generic and should be able to be compiled by Visual C++ 6.0. So you might try just cutting and pasting the regexp classes into the 6.0 project. Note: I would not try including the header files directly as that would risk mixing two different versions of ATL in the same project - this is a recipe for disaster.
The one issue you might face with this approach (and it is a pretty big issue) is that I suspect like all regexp classes that are written in C++ the ATL regexp classes depend heavily on templates and the Visual C++ 6.0 compiler, as has been already mentioned, is pretty poor at handling templates.
Boost did target VC6. Checking the boost::regex history even shows that the newest version of that library takes VC6 into consideration.
Another worrying remark about the regex lib, however:
"There have been some reports of compiler-optimization bugs affecting this library, (particularly with VC6 versions prior to service patch 5) the workaround is to build the library using /Oityb1 rather than /O2. That is to use all optimization settings except /Oa. This problem is reported to affect some standard library code as well (in fact I'm not sure if the problem is with the regex code or the underlying standard library), so it's probably worthwhile applying this workaround in normal practice in any case."
If possible, I would move your code up to VC8. While this thread indicates that you have a more-or-less good chance of running Boost or ATL RegEx implementations against VC6, the level of confidence is not going to be as high, plus you're foregoing the tons of other benefits in using VC8.
I wouldn't recommend taking the risk of trying boost ,where C++ conformance needs to be high, on VC6, where C++ conformance was pretty poor. Boost was one of the libraries that VC7.1/8.0 used to test its improved C++ conformance.
I'd generally agree, but I can't remember having any trouble with the regex libraries mixed with VC6. In any case, Boost comes with extensive regression tests which should be able to approve (or trash) the usage.
I wouldn't recommend taking the risk of trying boost ,where C++ conformance needs to be high, on VC6, where C++ conformance was pretty poor. Boost was one of the libraries that VC7.1/8.0 used to test its improved C++ conformance.
Regular expressions for VC6?
dataMonkey
ok, i try to use this from boost, i search an download link for this package, but i dont find it on the page from boost!
Any one knows from wich site i have to download it
I try this site: http://www.boost.org/libs/regex/doc/index.html, but here is nothing to see!
To move my project now to VC8 is not a good idea now, i finish my project soon, after them i can transport it to VC8.
regards
break;
P.S. sorry, i fond it!!!
dwl
FannwongCindy
yes, i have VS8 installed and they have this files for regexp., but my project is in VS6 wit VC6 written, and i like to now hot to inplemented this libraries in VS6 projects
regards
break;
dbdog
Mansoor Shiraz
I would say that there should be nothing in the ATL regexp classes that should be version specific; by this I mean that the code should be pretty generic and should be able to be compiled by Visual C++ 6.0. So you might try just cutting and pasting the regexp classes into the 6.0 project. Note: I would not try including the header files directly as that would risk mixing two different versions of ATL in the same project - this is a recipe for disaster.
The one issue you might face with this approach (and it is a pretty big issue) is that I suspect like all regexp classes that are written in C++ the ATL regexp classes depend heavily on templates and the Visual C++ 6.0 compiler, as has been already mentioned, is pretty poor at handling templates.
Esp_99
ATL should be one of the libraries installed with VC6. http://msdn2.microsoft.com/en-us/library/6w2611dd.aspx has an article on how to use the classes.
If you find that ATL is not the thing for you, Boost Regex can be a good alternative. See http://www.boost.org/libs/regex/doc/index.html for more information on those.
LiamD
Boost did target VC6. Checking the boost::regex history even shows that the newest version of that library takes VC6 into consideration.
Another worrying remark about the regex lib, however:
So, the sooner you get rid of VC6, the better.
markse
If possible, I would move your code up to VC8. While this thread indicates that you have a more-or-less good chance of running Boost or ATL RegEx implementations against VC6, the level of confidence is not going to be as high, plus you're foregoing the tons of other benefits in using VC8.
Dee_dotnet_79
Concerning Boost on VC6, this thread just came up: http://forums.microsoft.com/MSDN/ShowPost.aspx PostID=703421&SiteID=1
VC6 didn't use Boost as a test suite, and Boost probably never targeted VC6.
Brian
Rockman Eugene
I'd generally agree, but I can't remember having any trouble with the regex libraries mixed with VC6. In any case, Boost comes with extensive regression tests which should be able to approve (or trash) the usage.
zariusan