Topic: Announcing: The GRETA Regular Expression Template Archive


Author: "Eric Niebler" <ericne@microsoft.com>
Date: 25 Jan 2002 21:49:56 GMT
Raw View
(Apologies for the cross-post.  I believe this would be of interest to both
groups.)

During my time here in Microsoft Research, I have developed my own regular
expression engine in C++.  It turned out rather well I think, so I convinced
our lawyers to let me post the source code to our external website.  You can
download the code and documentation from
http://research.microsoft.com/downloads/.

I am aware that the library working group is considering adding regular
expression support to the standard library, and that they are looking at the
boost library as a reference implementation.  I'd like to throw my hat into
the ring as well.  (If someone on comp.std.c++ knows what the format for an
official library proposal should look like, pls let me know.)

Features include:

- Speed.
        For example, matching "^([0-9]+)(-| |$)(.*)$" against the string
"100- This is a line of ftp response which contains a message string" is 7.5
times faster than the boost regular expression code (MSVC++ 6, SP5)

- Separate syntax module
        Syntax is encapsulated in a separate module, specified with a
template parameter.

- Highly Perl-compliant
        The perl syntax module is the default

- Supports ASCII and Unicode (no DBCS or UTF-8 yet, sorry)

- Template on (bi-directional) iterator type

- Can match std::string, or within iterator ranges

- Separate, optimized interface for matching C-style NULL terminated strings

- Can perform matches in one of two modes: a fast, recursive mode or a
safer, stack-conservative mode

- Let's you define recursive regular expressions

- Compiles on VC6, VC7 and gcc 2.95 w/ STLPort (though I haven't tested it
well on that platform)

That's all for now.  Feel free to try it out and let me know what you think.
Apologies for the user license agreement -- it's the best I could get out of
our lawyers.  FWIW, the code with likely ship in a future version of Visual
C++.

Feel free to send feedback to ericne@microsoft.com.

Thanks,
Eric Niebler






      [ Send an empty e-mail to c++-help@netlab.cs.rpi.edu for info ]
      [ about comp.lang.c++.moderated. First time posters: do this! ]

[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.research.att.com/~austern/csc/faq.html                ]
[ Note that the FAQ URL has changed!  Please update your bookmarks.     ]






Author: =?iso-8859-1?Q?Bj=F6rn?= Lindberg <d95-bli.no@spam.nada.kth.se>
Date: 26 Jan 2002 22:39:35 GMT
Raw View
Eric Niebler wrote:

> During my time here in Microsoft Research, I have developed my own regular
> expression engine in C++.  It turned out rather well I think, so I convinced
> our lawyers to let me post the source code to our external website.  You can
> download the code and documentation from
> http://research.microsoft.com/downloads/.

I actually tried to download this, but it seems that it is in some kind
of MS windows-specific binary format, so I can't try it on my platform,
Linux.


Bj   rn



      [ Send an empty e-mail to c++-help@netlab.cs.rpi.edu for info ]
      [ about comp.lang.c++.moderated. First time posters: do this! ]

[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.research.att.com/~austern/csc/faq.html                ]
[ Note that the FAQ URL has changed!  Please update your bookmarks.     ]






Author: "Eric Niebler" <ericne@microsoft.com>
Date: 27 Jan 2002 16:26:31 GMT
Raw View

"Bjrn Lindberg" <d95-bli.no@spam.nada.kth.se> wrote in message
news:3C522EA6.84AEEAFF@spam.nada.kth.se...
 >
 > Eric Niebler wrote:
 >
 > > During my time here in Microsoft Research, I have developed my own
regular
 > > expression engine in C++.  It turned out rather well I think, so I
convinced
 > > our lawyers to let me post the source code to our external website.  You
can
 > > download the code and documentation from
 > > http://research.microsoft.com/downloads/.
 >
 > I actually tried to download this, but it seems that it is in some kind
 > of MS windows-specific binary format, so I can't try it on my platform,
 > Linux.
 >
 > Bjrn

I gave our web guys a standard .zip file and they turned it into a
self-extracting .exe because they thought it would be easier for people.
Sorry.  I explained the situation to them, and they'll put back the .zip
file.  Check back Monday.

Thanks,
Eric

This posting is provided "AS IS" with no warranties, and confers no rights.




      [ Send an empty e-mail to c++-help@netlab.cs.rpi.edu for info ]
      [ about comp.lang.c++.moderated. First time posters: do this! ]

[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.research.att.com/~austern/csc/faq.html                ]
[ Note that the FAQ URL has changed!  Please update your bookmarks.     ]






Author: Mathew Hendry <mathewhendry@hotmail.com>
Date: 27 Jan 2002 23:17:38 GMT
Raw View
On 26 Jan 2002 22:39:35 GMT, Bj   rn Lindberg
<d95-bli.no@spam.nada.kth.se> wrote:

>Eric Niebler wrote:
>
>> During my time here in Microsoft Research, I have developed my own regular
>> expression engine in C++.  It turned out rather well I think, so I convinced
>> our lawyers to let me post the source code to our external website.  You can
>> download the code and documentation from
>> http://research.microsoft.com/downloads/.
>
>I actually tried to download this, but it seems that it is in some kind
>of MS windows-specific binary format, so I can't try it on my platform,
>Linux.

It's a self-extracting zip archive:

  unzip greta.exe -d greta

-- Mat.



      [ Send an empty e-mail to c++-help@netlab.cs.rpi.edu for info ]
      [ about comp.lang.c++.moderated. First time posters: do this! ]

[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.research.att.com/~austern/csc/faq.html                ]
[ Note that the FAQ URL has changed!  Please update your bookmarks.     ]






Author: "Early Ehlinger" <spamsink@spamblaster.org>
Date: 27 Jan 2002 23:17:39 GMT
Raw View
"Bj   rn Lindberg" <d95-bli.no@spam.nada.kth.se> wrote:
> Eric Niebler wrote:
> > http://research.microsoft.com/downloads/. [GRETA link - EDE]
>
> I actually tried to download this, but it seems that it is in some
kind
> of MS windows-specific binary format, so I can't try it on my
platform,
> Linux.
>
> Bj   rn

I'm admittedly on windows right now, but I was able to open the
self-extracting (zipped) executable from MS's site (without executing
it) using Info-Zip, which I believe is available on Linux and a wide
variety of other platforms.  You should be able to simply:

unzip greta.exe

And get the contents.

Info-Zip is available here:

http://www.info-zip.org/pub/infozip/

If that doesn't work, you might also look at WINE (
http://www.winehq.org/ ) - a program loader that is capable of running
Windows programs on Linux.  I'd advise trying InfoZip first as the
last time I tried WINE it wasn't terribly stable yet and had trouble
with a number of simple applications (although Windows solitare worked
magnificently :)

- Early Ehlinger




      [ Send an empty e-mail to c++-help@netlab.cs.rpi.edu for info ]
      [ about comp.lang.c++.moderated. First time posters: do this! ]

[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.research.att.com/~austern/csc/faq.html                ]
[ Note that the FAQ URL has changed!  Please update your bookmarks.     ]






Author: "Ken Alverson" <Ken@Alverson.com>
Date: 27 Jan 2002 23:17:38 GMT
Raw View
"Bj   rn Lindberg" <d95-bli.no@spam.nada.kth.se> wrote in message
news:3C522EA6.84AEEAFF@spam.nada.kth.se...
>
> Eric Niebler wrote:
>
> > During my time here in Microsoft Research, I have developed my own
regular
> > expression engine in C++.  It turned out rather well I think, so I
convinced
> > our lawyers to let me post the source code to our external website.  You
can
> > download the code and documentation from
> > http://research.microsoft.com/downloads/.
>
> I actually tried to download this, but it seems that it is in some kind
> of MS windows-specific binary format, so I can't try it on my platform,
> Linux.

You didn't try hard enough.

"unzip greta.exe"

Ken




      [ Send an empty e-mail to c++-help@netlab.cs.rpi.edu for info ]
      [ about comp.lang.c++.moderated. First time posters: do this! ]

[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.research.att.com/~austern/csc/faq.html                ]
[ Note that the FAQ URL has changed!  Please update your bookmarks.     ]