Path: csiph.com!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news.iecc.com!.POSTED.news.iecc.com!nerds-end From: Hans-Peter Diettrich Newsgroups: comp.compilers Subject: Re: Regular expression string searching & matching Date: Tue, 13 Mar 2018 10:53:05 +0100 Organization: Compilers Central Lines: 23 Sender: news@iecc.com Approved: comp.compilers@iecc.com Message-ID: <18-03-050@comp.compilers> References: <18-03-016@comp.compilers> <18-03-032@comp.compilers> <18-03-034@comp.compilers> <18-03-035@comp.compilers> <18-03-041@comp.compilers> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="59615"; mail-complaints-to="abuse@iecc.com" Keywords: lex Posted-Date: 13 Mar 2018 15:33:51 EDT X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com Xref: csiph.com comp.compilers:1997 Am 11.03.2018 um 21:52 schrieb Ben Hanson: >> /This/ actually worked for me (one character change): >> >> [/][*]([^*]|[*]+[^/])*[*]+[/] > > Your modified regex produces the following state machine: > > State: 0 > [/] -> 1 > > State: 1 > [*] -> 2 > > State: 2 > [^*] -> 2 > [*] -> 3 I'm just curious about the notation. What happens if neither pattern matches? What's the purpose of [^*] in state 2, as opposed to state 1? DoDi