Re: Hi Folks : I'm trying to create a regular expression for finding a # wishing a dataset for only a number that is a multiple of 5

2019-09-09 Thread Gautam Desai
Thanks a lot
Gautam S Desai





On Sun, Sep 8, 2019 at 6:39 PM Mike  wrote:

>
> It's probably best if you write a short script
> that reads a __DATA__ section of data.
> Then tell us what it does and what you expected
> it to do.
>
> Off hand I don't see anything wrong with your regex,
> but I don't know what you expect it to do.
>
>
> Mike
>
>
> On 9/8/2019 4:34 PM, Jim Gibson wrote:
> > On Sep 8, 2019, at 1:30 PM, Gautam Desai 
> wrote:
> >> Do you guys have any pointers ?
> >   $t =~ m{
> >   (   # capture matched number in $1
> > \d*   # match zero or more decimal digits
> > [05]  # followed by a '0' or '5'
> >   )   # end of capture
> >   (?: # followed by either:
> > \D# a non-digit
> >   |   # or
> > $ # the end of the string
> >   )
> >   }x
> >
>
> --
> To unsubscribe, e-mail: beginners-unsubscr...@perl.org
> For additional commands, e-mail: beginners-h...@perl.org
> http://learn.perl.org/
>
>
>


Re: Hi Folks : I'm trying to create a regular expression for finding a # wishing a dataset for only a number that is a multiple of 5

2019-09-08 Thread Jim Gibson



> On Sep 8, 2019, at 6:36 PM, Olivier  wrote:
> 
> Jim Gibson  writes:
> 
>> On Sep 8, 2019, at 3:39 PM, Mike  wrote:
>>> 
>>> 
>>> It's probably best if you write a short script
>>> that reads a __DATA__ section of data.
>>> Then tell us what it does and what you expected
>>> it to do.
>>> 
>>> Off hand I don't see anything wrong with your regex,
>>> but I don't know what you expect it to do.
>>> 
>> 
>> I expect it to return a positive value if $t contains a number anywhere 
>> within it and put that number in the $1 capture variable.
> 
> Well, that is not what is in your regex: you look for a decimal number
> ending with 0 or 5, and it must be the last number of the line.
> 
> What about something simple like:
> 
>/(\d*[05])\D*$/

I prefer the explicit (?:…|…) structure that tells the reader that an alternate 
expression is being used. Also, the “zero or more” * operator can be very slow 
for long strings.

> 
> The Regex Coach is your friend (and works well under wine).
> 
> It alsways help to present with some sample data.

If you want to use this regex, then you should test it yourself. I did.

> 
> Best regards,
> 
> Olivier
> 
>>> 
>>> Mike
>>> 
>>> 
>>> On 9/8/2019 4:34 PM, Jim Gibson wrote:
 On Sep 8, 2019, at 1:30 PM, Gautam Desai  
 wrote:
> Do you guys have any pointers ?
$t =~ m{
(   # capture matched number in $1
  \d*   # match zero or more decimal digits
  [05]  # followed by a '0' or '5'
)   # end of capture
(?: # followed by either:
  \D# a non-digit
|   # or
  $ # the end of the string
)
}x
 
>>> 
>>> -- 
>>> To unsubscribe, e-mail: beginners-unsubscr...@perl.org
>>> For additional commands, e-mail: beginners-h...@perl.org
>>> http://learn.perl.org/
>>> 
>>> 
>> 
>> Jim Gibson
>> j...@gibson.org
> 
> -- 
> 
> -- 
> To unsubscribe, e-mail: beginners-unsubscr...@perl.org
> For additional commands, e-mail: beginners-h...@perl.org
> http://learn.perl.org/

Jim Gibson
j...@gibson.org

--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/




Re: Hi Folks : I'm trying to create a regular expression for finding a # wishing a dataset for only a number that is a multiple of 5

2019-09-08 Thread Olivier
Jim Gibson  writes:

> On Sep 8, 2019, at 3:39 PM, Mike  wrote:
>> 
>> 
>> It's probably best if you write a short script
>> that reads a __DATA__ section of data.
>> Then tell us what it does and what you expected
>> it to do.
>> 
>> Off hand I don't see anything wrong with your regex,
>> but I don't know what you expect it to do.
>> 
>
> I expect it to return a positive value if $t contains a number anywhere 
> within it and put that number in the $1 capture variable.

Well, that is not what is in your regex: you look for a decimal number
ending with 0 or 5, and it must be the last number of the line.

What about something simple like:

/(\d*[05])\D*$/

The Regex Coach is your friend (and works well under wine).

It alsways help to present with some sample data.

Best regards,

Olivier

>> 
>> Mike
>> 
>> 
>> On 9/8/2019 4:34 PM, Jim Gibson wrote:
>>> On Sep 8, 2019, at 1:30 PM, Gautam Desai  
>>> wrote:
 Do you guys have any pointers ?
>>> $t =~ m{
>>> (   # capture matched number in $1
>>>   \d*   # match zero or more decimal digits
>>>   [05]  # followed by a '0' or '5'
>>> )   # end of capture
>>> (?: # followed by either:
>>>   \D# a non-digit
>>> |   # or
>>>   $ # the end of the string
>>> )
>>> }x
>>> 
>> 
>> -- 
>> To unsubscribe, e-mail: beginners-unsubscr...@perl.org
>> For additional commands, e-mail: beginners-h...@perl.org
>> http://learn.perl.org/
>> 
>> 
>
> Jim Gibson
> j...@gibson.org

-- 

-- 
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/




Re: Hi Folks : I'm trying to create a regular expression for finding a # wishing a dataset for only a number that is a multiple of 5

2019-09-08 Thread Jim Gibson
On Sep 8, 2019, at 3:39 PM, Mike  wrote:
> 
> 
> It's probably best if you write a short script
> that reads a __DATA__ section of data.
> Then tell us what it does and what you expected
> it to do.
> 
> Off hand I don't see anything wrong with your regex,
> but I don't know what you expect it to do.
> 

I expect it to return a positive value if $t contains a number anywhere within 
it and put that number in the $1 capture variable.

> 
> Mike
> 
> 
> On 9/8/2019 4:34 PM, Jim Gibson wrote:
>> On Sep 8, 2019, at 1:30 PM, Gautam Desai  
>> wrote:
>>> Do you guys have any pointers ?
>>  $t =~ m{
>>  (   # capture matched number in $1
>>\d*   # match zero or more decimal digits
>>[05]  # followed by a '0' or '5'
>>  )   # end of capture
>>  (?: # followed by either:
>>\D# a non-digit
>>  |   # or
>>$ # the end of the string
>>  )
>>  }x
>> 
> 
> -- 
> To unsubscribe, e-mail: beginners-unsubscr...@perl.org
> For additional commands, e-mail: beginners-h...@perl.org
> http://learn.perl.org/
> 
> 

Jim Gibson
j...@gibson.org

--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/




Re: Hi Folks : I'm trying to create a regular expression for finding a # wishing a dataset for only a number that is a multiple of 5

2019-09-08 Thread Mike



It's probably best if you write a short script
that reads a __DATA__ section of data.
Then tell us what it does and what you expected
it to do.

Off hand I don't see anything wrong with your regex,
but I don't know what you expect it to do.


Mike


On 9/8/2019 4:34 PM, Jim Gibson wrote:

On Sep 8, 2019, at 1:30 PM, Gautam Desai  wrote:

Do you guys have any pointers ?

$t =~ m{
(   # capture matched number in $1
  \d*   # match zero or more decimal digits
  [05]  # followed by a '0' or '5'
)   # end of capture
(?: # followed by either:
  \D# a non-digit
|   # or
  $ # the end of the string
)
}x



--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/




Re: Hi Folks : I'm trying to create a regular expression for finding a # wishing a dataset for only a number that is a multiple of 5

2019-09-08 Thread Jim Gibson
On Sep 8, 2019, at 1:30 PM, Gautam Desai  wrote:
> 
> Do you guys have any pointers ? 

$t =~ m{ 
(   # capture matched number in $1
  \d*   # match zero or more decimal digits
  [05]  # followed by a '0' or '5'
)   # end of capture
(?: # followed by either:
  \D# a non-digit
|   # or
  $ # the end of the string 
) 
}x 

--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/