Sophie Mattoug wrote:
> Sophie Mattoug wrote:
>
> > Adam i Agnieszka Gasiorowski FNORD wrote:
> >
> >> I'm trying to develop a regex for matching
> >> with preg_match_all, I want to match such things
> >> like image name, image alt text, image title in
> >> construct like this:
> >>
> >> ....html...
> >> <div class="class" style="style">
> >> <img src="img=name" alt="alt" title="title" />
> >> <span class="class" style="style">
> >> text
> >> </span>
> >> </div>
> >> ....html...
> >> The rexex as for now is:
> >>
> >> define(
> >> 'REGEX_IMAGE_NAMES_AND_TITLES_AND_ALTS_FROM_CONTENT',
> >> '{
> >> (?:<\s*img\s+src\s*=\s*(?:"|\')?\s*(?:img)?\s*=\s*) #
> >> <img>
> >> (?>\b\S+\b) # name
> >> (?:title\s*=\s*(?:"|\')) #
> >> title
> >> (?>\b\S*\b)
> >> (?:"|\')*\s*
> >> (?:alt\s*=\s*(?:"|\')) # alt
> >> (?>\b\S*\b)
> >> (?:"|\')*\s*
> >> (?:\"|\'|>|/>|\s) # <img />
> >> }Uix'
> >> );
> >>
> >> , but it does not match. How can I fix it?
> >>
> >>
> >
> > It's not so easy to match an entire IMG tag, because first of all the
> > attributes are not always in the same order. If I were you, this is
> > what I would do :
> > ereg("<img ([^>]+)>", $your_text, $img_array);
> > $i = 0;
> > foreach ($img_array as $img) {
> > while (ereg("^(.+)=\"(.+)\"", "", $img, $regs))
> > $images[$i][$regs[1]] = $regs[2];
> > $i++;
> > }
> >
> > Hope this helps,
>
> Sorry I made a mistake. Better do this:
> ereg("<img ([^>]+)>", $your_text, $img_array);
> $i = 0;
> foreach ($img_array as $img) {
> while (ereg("^(.+)=\"(.+)\"(.+)$", "", $img, $regs)) {
> $images[$i][$regs[1]] = $regs[2];
> $img = $regs[3];
> }
> $i++;
> }
Ah, now I get it. I'll try it
(with preg-functions, as I prefer them).
So I'll get something like
$images = array(
[0] => array(
src => 'image1.jpg',
alt => '',
title => 'a cow'
),
[1] ...
)
...nice :8]. Thank you!
--
Seks, seksić, seksolatki... news:pl.soc.seks.moderowana
http://hyperreal.info { iWanToDie } WiNoNa ) (
http://szatanowskie-ladacznice.0-700.pl foReVeR( * )
Poznaj jej zwiewne kształty... http://www.opera.com 007
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php