From owner-freebsd-questions@FreeBSD.ORG Sat May 29 16:53:02 2004 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3079A16A4CF for ; Sat, 29 May 2004 16:53:02 -0700 (PDT) Received: from pd3mo2so.prod.shaw.ca (shawidc-mo1.cg.shawcable.net [24.71.223.10]) by mx1.FreeBSD.org (Postfix) with ESMTP id 04DF943D3F for ; Sat, 29 May 2004 16:53:02 -0700 (PDT) (envelope-from aardvark@saintaardvarkthecarpeted.com) Received: from pd3mr3so.prod.shaw.ca (pd3mr3so-ser.prod.shaw.ca [10.0.141.179])2003))freebsd-questions@freebsd.org; Sat, 29 May 2004 17:49:56 -0600 (MDT) Received: from pn2ml6so.prod.shaw.ca ([10.0.121.150]) by pd3mr3so.prod.shaw.ca (Sun ONE Messaging Server 6.0 HotFix 1.01 (built Mar 15 2004)) with ESMTP id <0HYI0020R2785W21@pd3mr3so.prod.shaw.ca> for freebsd-questions@freebsd.org; Sat, 29 May 2004 17:49:56 -0600 (MDT) Received: from francisco.saintaardvarkthecarpeted.com (S010600609761a671.vc.shawcable.net [24.87.202.31]) by l-daemon (iPlanet Messaging Server 5.2 HotFix 1.18 (built Jul 28 2003)) with ESMTP id <0HYI00BJE277UZ@l-daemon> for freebsd-questions@freebsd.org; Sat, 29 May 2004 17:49:56 -0600 (MDT) Received: from hardesty.saintaardvarkthecarpeted.com (hardesty.saintaardvarkthecarpeted.com [192.168.23.1]) by francisco.saintaardvarkthecarpeted.com (8.12.10/8.12.10) with ESMTP id i4U03OIh086088; Sat, 29 May 2004 17:03:24 -0700 Received: from hardesty.saintaardvarkthecarpeted.com (localhost.saintaardvarkthecarpeted.com [127.0.0.1]) by hardesty.saintaardvarkthecarpeted.com (8.12.11/8.12.11) with ESMTP id i4TH1pEJ002070; Sat, 29 May 2004 10:01:51 -0700 (PDT) Received: (from aardvark@localhost) by hardesty.saintaardvarkthecarpeted.com (8.12.11/8.12.11/Submit) id i4TH1pNM022322; Sat, 29 May 2004 10:01:51 -0700 (PDT) Date: Sat, 29 May 2004 10:01:51 -0700 From: Saint Aardvark the Carpeted In-reply-to: To: JJB Message-id: <20040529170151.GB28582@hardesty.saintaardvarkthecarpeted.com> MIME-version: 1.0 Content-type: text/plain; charset=us-ascii Content-transfer-encoding: 7BIT Content-disposition: inline User-Agent: Mutt/1.4.2i References: X-Authentication-warning: hardesty.saintaardvarkthecarpeted.com: aardvark set sender to aardvark@saintaardvarkthecarpeted.com using -f cc: "freebsd-questions@FreeBSD. ORG" Subject: Re: Perl metacharacters X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 29 May 2004 23:53:02 -0000 JJB disturbed my sleep to write: > if (/(abuse\@.* )/) > { > $abuse_email = ${1}; > } [snip] > print($abuse_email) shows that it contains > abuse@xxxxx.xxx for probes, port scans etc. > How do I change the if statement so I only get the abuse@xxxxx.xxx > string? You want to minimize how much the bracket grabs. Right now you're telling it to grab as much as it can (".*"); a better solution would be (/(abuse\@.*? )/) which tells it to grab the smallest amount it can before the space. Even better would be: (/(abuse\@[\w\.-_]+)\s/) which grabs any word character, period, hyphen or underscore up to a space. Check your local listings to make sure I'm not leaving out any characters legal for domain names. > If (/(Net-.??-.??-.??-0-1)/) > { > $net_block = ${1}; > } > > The data is (Net-xxx-xxx-xxx-0-1) > Each xxx group will all ways by 1 to 3 digits long and different > combinations every time. > When matched I want $net_block just to hold Net-xxx-xxx-xxx-0-1 > What is the correct syntax? Something like: (/(Net-\d{1,3}-\d{1,3}-\d{1,3}-0-1)/ BTW, you'd be better off emailing Perl questions to a Perl-related mailing list or newsgroup, or posting them to Perlmonks.org. -- Saint Aardvark the Carpeted aardvark@saintaardvarkthecarpeted.com Because the plural of Anecdote is Myth.