Re: How to match a token not be quoted?
- From: rob.dixon@xxxxxxx (Rob Dixon)
- Date: Tue, 29 Jan 2008 02:57:25 +0000
Gunnar Hjalmarsson wrote:
Zhao, Bingfeng wrote:I want to a cure regex that match following requirements: given $line =
'abc abc "abc abcc" abcc', I want to replace all instances of "abc" that
not in quotation with, say 'd', so I expect I get 'd d "abc abcc" dc'.
$line =~ s/("[^"]*")|abc/$1 ? $1 : 'd'/eg;
You need a non-greedy modifier on that Gunnar:
$line =~ s/("[^"]*?")|abc/$1 ? $1 : 'd'/eg;
Rob
.
- Follow-Ups:
- Re: How to match a token not be quoted?
- From: Gunnar Hjalmarsson
- Re: How to match a token not be quoted?
- From: exilepanda
- Re: How to match a token not be quoted?
- References:
- How to match a token not be quoted?
- From: Bingfeng Zhao
- Re: How to match a token not be quoted?
- From: Gunnar Hjalmarsson
- How to match a token not be quoted?
- Prev by Date: Re: How to match a token not be quoted?
- Next by Date: Re: How to match a token not be quoted?
- Previous by thread: Re: How to match a token not be quoted?
- Next by thread: Re: How to match a token not be quoted?
- Index(es):