You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Alexander Burrows <al...@yahoo.com> on 2008/06/30 06:47:12 UTC
Some perl regex help
Hello again all. Been a while since I've posted here but needed some help on
a regex I was trying to write.
$line =~ tr/(\(|\)|<|>)/(\(|\)|\<|\>)/g;
This does not work at all in perl so I found so I replaced the tr with s and
the search part works as expected but the replace does not. I've been trying
to read around forums and regex documents for perl but they seem unorganized
and cryptic. So any help would be appreciated.
-Alexander
--
View this message in context: http://www.nabble.com/Some-perl-regex-help-tp18188634p18188634.html
Sent from the mod_perl - General mailing list archive at Nabble.com.
Re: Some perl regex help
Posted by Alexander Burrows <al...@yahoo.com>.
This worked great thanks. Was exactly what I was looking for.
-Alexander
James Smith-7 wrote:
>
>
>
> On Sun, 29 Jun 2008, Alexander Burrows wrote:
>
>>
>> Hello again all. Been a while since I've posted here but needed some help
>> on
>> a regex I was trying to write.
>>
>> $line =~ tr/(\(|\)|<|>)/(\(|\)|\<|\>)/g;
>
> Simplest approach is to make a hash of the substitutions and use
> an "e" executed regexp
>
> my %hash = ('('=>'(',')'=>')','<'=>'<','>'=>'>');
>
> $line =~ s/([()<>])/$hash{$1}/eg;
>
>>
>> This does not work at all in perl so I found so I replaced the tr with s
>> and
>> the search part works as expected but the replace does not. I've been
>> trying
>> to read around forums and regex documents for perl but they seem
>> unorganized
>> and cryptic. So any help would be appreciated.
>>
>> -Alexander
>> --
>> View this message in context:
>> http://www.nabble.com/Some-perl-regex-help-tp18188634p18188634.html
>> Sent from the mod_perl - General mailing list archive at Nabble.com.
>>
>>
>
>
> --
> The Wellcome Trust Sanger Institute is operated by Genome Research
> Limited, a charity registered in England with number 1021457 and a
> company registered in England with number 2742969, whose registered
> office is 215 Euston Road, London, NW1 2BE.
>
>
--
View this message in context: http://www.nabble.com/Some-perl-regex-help-tp18188634p18193673.html
Sent from the mod_perl - General mailing list archive at Nabble.com.
Re: Some perl regex help
Posted by James Smith <js...@sanger.ac.uk>.
On Sun, 29 Jun 2008, Alexander Burrows wrote:
>
> Hello again all. Been a while since I've posted here but needed some help on
> a regex I was trying to write.
>
> $line =~ tr/(\(|\)|<|>)/(\(|\)|\<|\>)/g;
Simplest approach is to make a hash of the substitutions and use
an "e" executed regexp
my %hash = ('('=>'(',')'=>')','<'=>'<','>'=>'>');
$line =~ s/([()<>])/$hash{$1}/eg;
>
> This does not work at all in perl so I found so I replaced the tr with s and
> the search part works as expected but the replace does not. I've been trying
> to read around forums and regex documents for perl but they seem unorganized
> and cryptic. So any help would be appreciated.
>
> -Alexander
> --
> View this message in context: http://www.nabble.com/Some-perl-regex-help-tp18188634p18188634.html
> Sent from the mod_perl - General mailing list archive at Nabble.com.
>
>
--
The Wellcome Trust Sanger Institute is operated by Genome Research
Limited, a charity registered in England with number 1021457 and a
company registered in England with number 2742969, whose registered
office is 215 Euston Road, London, NW1 2BE.
Re: Some perl regex help
Posted by Perrin Harkins <pe...@elem.com>.
On Mon, Jun 30, 2008 at 12:47 AM, Alexander Burrows <al...@yahoo.com> wrote:
> I've been trying
> to read around forums and regex documents for perl but they seem unorganized
> and cryptic. So any help would be appreciated.
This list is for mod_perl, not general Perl help. In the future, if
you need help with a regex please use one of the resources listed
here:
http://perl.apache.org/docs/offsite/other.html#Perl
The "beginners" mailing list is a good place to ask, and so is perlmonks.org.
- Perrin