Re: [PHP] Re: parsing a string

2004-10-20 Thread Dan McCullough
I tried the print_r on $res.  The preg_match does the first set fine.
So I get:
 
Campus
Bob (Williams)
 
the second one starts 
-
Address123 Main St
-
CityOxford
 
 
and so on
[EMAIL PROTECTED] wrote:
preg_match('#([^|]*)[|]+([^|]*)~[\\]+(([^\\]*)~[\\]+)+#Ui', $string, $res);
use print_r on the $res to check for the results (I'm not 100% sure if
they'll come out in $res[2], $res[3], $res[4], etc. or in $res[4][0],
$res[4][1], etc.


> I knew I shouldnt have abreviated the string.
> here is the string sorry I kinda flubbed on the last string
> "LocationCampus~\\n-\nNameBob
> Williams~\\n-\nAddress123 Main
> St~\\n-\n..."
>
> the ... is a very long list.
>
> how does this change the preg_match
>
> "M. Sokolewicz" wrote:
> Not sure what you want exactly, but here's a way using regexps to
> retrieve the strings seperatly:
> $string = 'CampusBob (Williams)~\toms more
> crap)~\blah blah blah)~\';
> preg_match('#([^|]*)[|]+([^|]*)~[\]+([^\]*)~[\]+([^\]*)~[\]+#Ui',
> $string, $res);
> $campus = $res[1];
> $bob = $res[2];
> $crap = $res[3];
> $blah = $res[4];
> ?>
> Now, if you wanted the positions... then something like this would work:
>
> $string = 'CampusBob (Williams)~\toms more
> crap)~\blah blah blah)~\';
> preg_match('#([^|]*)[|]+([^|]*)~[\]+([^\]*)~[\]+([^\]*)~[\]+#Ui',
> $string, $res);
>
> $campus = strpos($string, $res[1]);
> $bob = strpos($string, $res[2]);
> $crap = strpos($string, $res[3]);
> $blah = strpos($string, $res[4]);
> ?>
>
> Dan McCullough wrote:
>> Hey everyone
>>
>> Having a bit of trouble with something.
>>
>> I have a string which has known patterns.
>>
>> $string"CampusBob (Williams)~\toms more
>> crap)~\blah blah blah)~\";
>>
>> What I am looking for is
>>
>> Location which is Campus
>> Location Name which is Bob (Williams)
>>
>> Help?
>>
>>
>>
>> -
>> Do you Yahoo!?
>> vote.yahoo.com - Register online to vote today!
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
>
> 
> "Theres no such thing as a problem unless the servers are on fire!"
>
>
> -
> Do you Yahoo!?
> Yahoo! Mail - Helps protect you from nasty viruses.




"Theres no such thing as a problem unless the servers are on fire!"


-
Do you Yahoo!?
Take Yahoo! Mail with you! Get it on your mobile phone.

Re: [PHP] Re: parsing a string

2004-10-20 Thread Dan McCullough
I knew I shouldnt have abreviated the string.
here is the string sorry I kinda flubbed on the last string
"LocationCampus~\\n-\nNameBob 
Williams~\\n-\nAddress123 Main St~\\n-\n..."
 
the ... is a very long list.
 
how does this change the preg_match

"M. Sokolewicz" <[EMAIL PROTECTED]> wrote:
Not sure what you want exactly, but here's a way using regexps to 
retrieve the strings seperatly:
$string = 'CampusBob (Williams)~\toms more 
crap)~\blah blah blah)~\';
preg_match('#([^|]*)[|]+([^|]*)~[\]+([^\]*)~[\]+([^\]*)~[\]+#Ui', 
$string, $res);
$campus = $res[1];
$bob = $res[2];
$crap = $res[3];
$blah = $res[4];
?>
Now, if you wanted the positions... then something like this would work:

$string = 'CampusBob (Williams)~\toms more 
crap)~\blah blah blah)~\';
preg_match('#([^|]*)[|]+([^|]*)~[\]+([^\]*)~[\]+([^\]*)~[\]+#Ui', 
$string, $res);

$campus = strpos($string, $res[1]);
$bob = strpos($string, $res[2]);
$crap = strpos($string, $res[3]);
$blah = strpos($string, $res[4]);
?>

Dan McCullough wrote:
> Hey everyone
> 
> Having a bit of trouble with something.
> 
> I have a string which has known patterns.
> 
> $string"CampusBob (Williams)~\toms more crap)~\blah blah 
> blah)~\";
> 
> What I am looking for is 
> 
> Location which is Campus
> Location Name which is Bob (Williams)
> 
> Help?
> 
> 
> 
> -
> Do you Yahoo!?
> vote.yahoo.com - Register online to vote today!

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




"Theres no such thing as a problem unless the servers are on fire!"


-
Do you Yahoo!?
Yahoo! Mail - Helps protect you from nasty viruses.

[PHP] Re: parsing a string

2004-10-20 Thread M. Sokolewicz
Not sure what you want exactly, but here's a way using regexps to 
retrieve the strings seperatly:

$string = 'CampusBob (Williams)~\toms more 
crap)~\blah blah blah)~\';
preg_match('#([^|]*)[|]+([^|]*)~[\]+([^\]*)~[\]+([^\]*)~[\]+#Ui', 
$string, $res);
$campus = $res[1];
$bob = $res[2];
$crap = $res[3];
$blah = $res[4];
?>
Now, if you wanted the positions... then something like this would work:


$string = 'CampusBob (Williams)~\toms more 
crap)~\blah blah blah)~\';
preg_match('#([^|]*)[|]+([^|]*)~[\]+([^\]*)~[\]+([^\]*)~[\]+#Ui', 
$string, $res);

$campus = strpos($string, $res[1]);
$bob = strpos($string, $res[2]);
$crap = strpos($string, $res[3]);
$blah = strpos($string, $res[4]);
?>
Dan McCullough wrote:
Hey everyone
 
Having a bit of trouble with something.
 
I have a string which has known patterns.
 
$string"CampusBob (Williams)~\toms more crap)~\blah blah blah)~\";
 
What I am looking for is 
 
Location which is Campus
  Location Name which is Bob (Williams)
 
Help?
 


-
Do you Yahoo!?
vote.yahoo.com - Register online to vote today!
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[PHP] Re: parsing a string

2004-10-20 Thread Greg Beaver
Dan McCullough wrote:
Hey everyone
 
Having a bit of trouble with something.
 
I have a string which has known patterns.
 
$string"CampusBob (Williams)~\toms more crap)~\blah blah blah)~\";
 
What I am looking for is 
 
Location which is Campus
  Location Name which is Bob (Williams)
$x = explode('~', $string);
list($location, $name) = explode('', $x[0]);
Make sure that for each \ in the string, you use \\ (that's why there 
are 10 in my example.  If you have 5 \ you need 5 \\)

Greg
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[PHP] Re: parsing a string

2001-10-31 Thread John A. Grant

"Yz James" <[EMAIL PROTECTED]> wrote in message
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
> Hey John,
> something like this might work:
>
> 
> $string = "This is a string with an embedded image [bird.gif,this is a
> bird]";
>
> $string = preg_replace("/\[(.*?\.)(gif|jpg),(.*?)\]/i", " alt=\"\\3\">", $string);
>
> echo $string;
>
> ?>

Great!. I love it when I see stuff like this written by someone
who knows regex better than I.  The ability to insert the
pieces that are recognized/extracted via \1, \2 is pretty cool.
Thanks.

--
John A. Grant  * I speak only for myself *  (remove 'z' to reply)
Radiation Geophysics, Geological Survey of Canada, Ottawa
If you followup, please do NOT e-mail me a copy: I will read it here





-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP] Re: parsing a string

2001-10-18 Thread James, Yz

Hey John,
something like this might work:

", $string);

echo $string;

?>

James

"John A. Grant" <[EMAIL PROTECTED]> wrote in message
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
> I'm reading some HTML text from a file and echoing it to
> stdout. The HTML text contains  but I would rather
> have the server do the work of looking up the image size.
> I know how to lookup the image size with getimagesize().
> My problem is in coming up with a good format for embedding
> a reference to the image in the text and then writing the code
> to parse it.
>
> So instead of this:
> here is some text  alt="this is a bird"> and here is more text and another
> image  alt="this is a plane"> and more text
>
> I would like to have something like this:
> here is some text [bird.gif,this is a bird] and here
> is more text and another image [plane.gif, this is a plane]
> and more text
>
> Crossing line boundaries is not an issue - each text string
> is complete. I need to be able to dump out the string until I
> see a reference to an image, then extract the name and alt text,
> handle it (by emitting ) and continue to echo text from
> the string until I encounter another image reference.
>
> My problem is in coming up with a syntax for this and then
> to write the code to extract the information.
>
> In the above example, I'm using the syntax:
> [filename,text]
>
> but it's conceivable that the HTML text might also contain
> [some plain text not related to images]
>
> so I thought about some of these:
> {filename,alt text} - not good, text might contain {plain text]
> @filename, alt text@
> img(filename,alt text)
>
> Using the same @ delimiter at each end might make it easier
> to use explode() to split the text.  But perhaps img(filename,text)
> is more elegant, but it might need more skills than I have in using
> regex to recognize it and extract it.  Also I need to figure out how
> to extract and echo the plain text around it.
>
> Any ideas are appreciated. Thanks.
>
> --
> John A. Grant  * I speak only for myself *  (remove 'z' to reply)
> Radiation Geophysics, Geological Survey of Canada, Ottawa
> If you followup, please do NOT e-mail me a copy: I will read it here
>
>
>



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]