Asp Forum
Home
|
Login
|
Register
|
Search
Forums
>
comp.lang.ruby
Defining a "followed by" operator or function in Ruby
Andy Elvey
3/23/2009 6:24:00 AM
Hi all -
As part of doing a parsing lib in Ruby, I want to create a "followed
by" operator or function. In other words, I want to be able to specify
that (say) "foo" must be followed by n or more occurrences of "bar".
Something like this -
"foo".(0,+) "bar" would match zero or more occurrences of "foo" followed
by "bar". So, it would match "foo" , "foo" "bar", "foo" "bar" "bar" ...
and so on.
"foo".(0,1) "bar" would match zero or one occurrences of "foo" followed
by "bar".
So, how could this be done?
Very many thanks in advance!
- Andy
--
Posted via
http://www.ruby-...
.
2 Answers
Brian Candler
3/23/2009 1:38:00 PM
0
> Something like this -
> "foo".(0,+) "bar" would match zero or more occurrences of "foo" followed
> by "bar". So, it would match "foo" , "foo" "bar", "foo" "bar" "bar" ...
> and so on.
>
> "foo".(0,1) "bar" would match zero or one occurrences of "foo" followed
> by "bar".
Are you talking about regular expression syntax?
(foo){0,}(bar){1,} # or (foo)?(bar)+
(foo){0,1}bar # or (foo)?bar
See
http://www.ruby-doc.org/docs/ProgrammingRuby/html/langua...
Otherwise, if you are writing a parser for some language of your own
devising, then you are free to implement whatever syntax you wish. Buy a
good book on language and compiler design.
--
Posted via
http://www.ruby-...
.
Andy Elvey
3/24/2009 5:33:00 AM
0
Brian Candler wrote:
>> Something like this -
>> "foo".(0,+) "bar" would match zero or more occurrences of "foo" followed
>> by "bar". So, it would match "foo" , "foo" "bar", "foo" "bar" "bar" ...
>> and so on.
>>
>> "foo".(0,1) "bar" would match zero or one occurrences of "foo" followed
>> by "bar".
>
> Are you talking about regular expression syntax?
>
> (foo){0,}(bar){1,} # or (foo)?(bar)+
> (foo){0,1}bar # or (foo)?bar
>
> See
http://www.ruby-doc.org/docs/ProgrammingRuby/html/langua...
>
> Otherwise, if you are writing a parser for some language of your own
> devising, then you are free to implement whatever syntax you wish. Buy a
> good book on language and compiler design.
Hi Brian -
Thanks very much for that - it should be a big help!
Bye for now -
- Andy
--
Posted via
http://www.ruby-...
.
Servizio di avviso nuovi messaggi
Ricevi direttamente nella tua mail i nuovi messaggi per
Defining a "followed by" operator or function in Ruby
Inserendo la tua e-mail nella casella sotto, riceverai un avviso tramite posta elettronica ogni volta che il motore di ricerca troverà un nuovo messaggio per te
Il servizio è completamente GRATUITO!
x
Login to ForumsZone
Login with Google
Login with E-Mail & Password