
Bulat Ziganshin wrote:
Hello Jules,
Friday, July 6, 2007, 10:00:12 PM, you wrote:
to think of many more uses of this function. I actually wrote it to do HTML fix-up, working with the TagSoup library. A few quick definitions and it becomes easy to express things like 'remove all FONT, BR and U tags; replace all instances of B with SPAN CLASS="important"...'; the task of repairing broken HTML and replacing simplistic markup with semantic markup. It's very powerful to have the separation between selection and transformation; it's quite easy to build up powerful libraries of selectors and use them with simple transformers.
hm. are you know about existence of haskell regexp libs? :)
Indeed. And regexps can be used to built plenty of interesting selectors. However, some selectors like 'balanced tags' or 'tag with class A and class B in any order' are hard or impossible to write with regexps. Jules