grep -oE '<data>[^<]*</data>' yourxmlfile
tag='data'
tL="<$tag>" tR="</$tag>"
xml=$(< yourxmlfile)
while case $xml in *"$tL"* ) :;; * ) break;; esac; do
t1=${xml#*"$tL"} t2=${t1%%"$tR"*} xml=${t1#*"$tR"}
echo "${tL}${t2}${tR}"
done
perl -lne "print for/<$tag>.*?<\/$tag>/g" yourxmlfile
sed -e "
s|<$tag>|\n&|
s/.*\n//
s|</$tag>|&\n|
/\n/P;D
" yourxmlfile
<data>asdf</data>
<data>asdf</data>
<data>asdf</data>
<data>asdf</data>