Question on PHP regular expressions

Question on PHP regular expressions

am 08.11.2007 20:05:11 von SBerry

In PHP I have many more options for functions that do regular
expression than I did in Perl. My question is what is the best one to
use for doing the following:

Give the following:
{Somestring.somestring.somestring} blah blah {somestring} value here
not used {more.text.here}

I want an array like the following:
[0] => Somestring.somestring.somestring
[1] => somestring
[2] => more.text.here

So basically I just want to capture the contents (alpha-numeric +
periods) inside of curly braces.

Thanks for any help.

Re: Question on PHP regular expressions

am 08.11.2007 20:17:10 von carl

sberry writes:

> In PHP I have many more options for functions that do regular
> expression than I did in Perl. My question is what is the best one to
> use for doing the following:
>
> Give the following:
> {Somestring.somestring.somestring} blah blah {somestring} value here
> not used {more.text.here}
>
> I want an array like the following:
> [0] => Somestring.somestring.somestring
> [1] => somestring
> [2] => more.text.here
>
> So basically I just want to capture the contents (alpha-numeric +
> periods) inside of curly braces.
>
> Thanks for any help.

This should get you started:

$string = "{Somestring.somestring.somestring} blah blah
{somestring} value here not used {more.text.here}";
$pattern = '/\{.+?\}/';
preg_match_all($pattern, $string, $matches);
print_r($matches);

Hope that helps,

Re: Question on PHP regular expressions

am 08.11.2007 20:27:10 von SBerry

On Nov 8, 11:17 am, Carl wrote:
> sberry writes:
> > In PHP I have many more options for functions that do regular
> > expression than I did in Perl. My question is what is the best one to
> > use for doing the following:
>
> > Give the following:
> > {Somestring.somestring.somestring} blah blah {somestring} value here
> > not used {more.text.here}
>
> > I want an array like the following:
> > [0] => Somestring.somestring.somestring
> > [1] => somestring
> > [2] => more.text.here
>
> > So basically I just want to capture the contents (alpha-numeric +
> > periods) inside of curly braces.
>
> > Thanks for any help.
>
> This should get you started:
>
> $string = "{Somestring.somestring.somestring} blah blah
> {somestring} value here not used {more.text.here}";
> $pattern = '/\{.+?\}/';
> preg_match_all($pattern, $string, $matches);
> print_r($matches);
>
> Hope that helps,

Thanks. That is exactly what I wanted to do. I just added the
PREG_OFFSET_CAPTURE so I could also track the string offsets of the
matches.