Posted By

rengber on 05/16/07


Tagged

xml RegularExpression


Versions (?)

Who likes this?

7 people have marked this snippet as a favorite

cynic68
kobylinski
vali29
copyleft
wbowers
jeremyhcobb
Tyster


Regular Expression to Grab the Content of an XML Element


 / Published in: Regular Expression
 

If there will be multiple sets of these tags in a scanned XML string, you need the '?' after the '*' to specify a non-greedy (lazy) match.

  1. (?<=Message\>)[\S\s]*?(?=\<\/Message)

Report this snippet  

Comments

RSS Icon Subscribe to comments
Posted By: Tomalak on September 4, 2007

Note that this only works with RegEx engines that support lookaround and non-greedy matching, which is not guaranteed.

If you do not have those options, you can capture the contents in parentheses: <Message>([^<]*)</Message>

In loops, this is faster than using lookaround and non-greedy matching, too.

Posted By: rengber on August 11, 2008

Good advice, thanks!

You need to login to post a comment.