Re: Re: Regex for extracting quoted strings
| From: | Shawn McKenzie | Date: | Mon, 07 Mar 2011 16:35:56 +0000 |
| Subject: | Re: Re: Regex for extracting quoted strings | ||
| References: | 1 2 3 4 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-311733@lists.php.net to get a copy of this message | ||
On 03/05/2011 04:38 PM, Mark Kelly wrote:
> Hi.
>
> Thanks for all the replies.
>
> On Saturday 05 Mar 2011 at 22:11 Simon J Welsh wrote:
>
>> On 6/03/2011, at 11:08 AM, Shawn McKenzie wrote:
>>> $regex = '/"([^"]+)"/';
>
> Shawn, this regex gets me two copies of each string - one with and one without
> the double quotes - as did the one Nathan posted earlier.
>
>> Also, you'll want preg_match_all rather than preg_match.
>
> Yeah, I realised that quite early on in my messing about.
>
> What I have ended up with is:
>
> $regex = '/".*?"/';
> $found = preg_match_all($regex, $sentence, $phrases);
>
> This still leaves the quotes in the phrases, but at least I only get one copy
> of each phrase. I'm just trimming the quotes afterwards.
>
> Thanks for all the advice.
>
> Mark
$sentence = 'Dave said "This is it". "Nope, that is the wrong colour"
she replied.';
$regex = '/"([^"]+)"/';
preg_match_all($regex, $sentence, $phrases);
print_r($phrases[1]);
--
Thanks!
-Shawn
http://www.spidean.com