Notice: The ATagParser will no longer be available for sale as of 07/31/2007 but will still be actively developed and supported by its author.

Are you tired of trying to figure out overly complex tag-based parsing engines?

Then look no further!

ATagParser is a non-visual tag based parsing component for Delphi versions 3, 4, 5, 6 & 7 and is source compilable with Delphi 8, Delphi 2005, 2006 and C++ Builder 6. ATagParser is the ideal component for parsing ASP, ASPX, HTML, XHTML, XML and RSS documents as well as any other file type based on a tag format. ATagParser comes with a full compliment of events, methods and properties and is very simple to use.

New!

The long promised cascading style sheet parser is now included with ATagParser. It allows you to parse style sheets from files as well as inline styles associated with HTML tags!


 

ATagParser was designed to allow you to interact with the parsing engine via events and persistent objects.

All events that return information contain an Abort variable that can be set to instruct the parsing engine to exit immediately once a condition has been met. In the following screenshot, the first attribute value that equals 10 will terminate the parsing process.

Of course, you can turn element types on and off from within any of the events as well as filter tags names via the OnTagName event. This event actually allows you to allow or disallow the parsing of attributes for any tag.


A lot of time and effort was spent making ATagParser as fast and accurate as possible. As with any speed-vs-accuracy scenario, there were tradeoffs in the design of ATagParser. The parsing engine is not burdened with any unnecessary actions. Its sole purpose is to dissect the document as quickly and as accurately as possible and to return the information in a form that can be further manipulated.

ATagParser moves forward through the document examining each character to determine how to ultimately apply it to the various events. Each movement takes an average of .12µs per character on a 500Mhz CPU and .05µs on an 800Mhz CPU (that's the equivalent of 20 characters per millionth of a second!)

ATagParser includes a property called VirtualMode which can be used to make ATagParser even faster! In VirtualMode, ATagParser is unburdened with having to deal with anything other than tag names, hash values, location and type.

The speed increase is simply phenomenal. We acheived the following results while testing.

800Mhz Athlon CPU w/256K memory
Tag Count
File Size (bytes)
Speed
Tags Per Minute
3,538
187,895
10.99 ms
321,929
7,890
178,403
27.81 ms
292,114
778
31,214
1.29 ms
603,100

By any standard, that's fast!

* µs = microseconds or millionths of a second
* Your results may vary and are dependent on several factors including hardware configuration


Right out of the box, ATagParser supports the following tag types.

Which make it perfect for the following uses:


The ATagParser v2.04+ package costs $39.95 for a single-user license with clean, well commented source code, extensive help files and support for the lifetime of the component. Site licenses cost $99.95 and include all features of the single-user license.