I finally cracked the nut on the problem I was having with SimplePie. The compatibility fix I’ve been working on finally works for the two feeds that I was having a problem with. Thanks to Mark IJbema for nudging me in the right direction.
The downside is that it slowed SimplePie down a bit. I think that it’s something I’ll let slide for this version, and try to tackle it for the next. I still need to go back through the list of 300+ feeds to make sure I haven’t broken something else, but assuming that all goes well, I’ll post SimplePie 0.94 sometime tonight or tomorrow.
I hope you all are using it, or are planning to use it. It’s good software, really… and no, I’m not trying to float my own boat. If you find any bugs or would like to see something added, let me know.

Mark IJbema
September 22, 2004
I just realised my first regex wasn’t totally correct, or maybe it is for what you want . But it wouldn’t match <tag attr=”/”/> for example, so to match all selfenclosing tags this would be more correct:
<[^>/]+((“[^"]*”)|(‘[^']*’)|([^>/]*))/>
this matches all characters within quotes, including greater then and slash, also if you want to be really correct you should match ” within ” and ‘ within ” and ‘ as well, so that would become:
<[^>/]+((“([^"\]|\.)*”)|(‘([^'\]|\.)*’)|([^>/]*))/>
That should work (untested though). One advice on regexes, write testcases (actually that goes for all software development, but with regexes it really helps a lot). An easy way is to have something like a php script with a function which takes a string and a boolean indicating wether it should validate. The function checks the string against the regex, and then gives feedback (something like ‘the string validated while it shouldn’t: [string]‘). It’s also a great way to experiment with new regular expressions, while maintaining a lot more integrity.