Re: glob patterns [message #183303 is a reply to message #183294] |
Sun, 20 October 2013 12:50 |
Luuk
Messages: 329 Registered: September 2010
Karma:
|
Senior Member |
|
|
On 20-10-2013 06:58, j wrote:
> I don't understand when to use {},[] or () in php glob matching
>
> I want to match one or more numbers, either an a,w or h, a dash and then
> a string.
>
> 120a-some_string or 1400w-some_string or 7h-some_string...
>
> Is it:
>
> glob('+{0-9}@{a,h,w}-some_string,GLOB_BRACE);
>
> or is it?:
>
> glob('+[0-9]@[ahw]-some_string');
>
> or something else?
>
> Jeff
>
>
> ls -l *some_string
-rw-r--r-- 1 luuk users 0 Oct 20 14:45 120a-some_string
-rw-r--r-- 1 luuk users 0 Oct 20 14:45 1400w-some_string
-rw-r--r-- 1 luuk users 0 Oct 20 14:45 7h-some_string
> php -r " print_r(glob('+[0-9]@[ahw]-some_string')); "
Array
(
)
> php -r " print_r(glob('+{0-9}@{a,h,w}-some_string',GLOB_BRACE)); "
Array
(
)
> php -r " print_r(glob('*-some_string')); "
Array
(
[0] => 120a-some_string
[1] => 1400w-some_string
[2] => 7h-some_string
)
>
i would go for:
> php -r " print_r(glob('[0-9]*[awh]-some_string')); "
Array
(
[0] => 120a-some_string
[1] => 1400w-some_string
[2] => 7h-some_string
)
|
|
|