>
> Dan,
>
> Maybe you want to do a series of smaller regexes, rather than
> one large one?
No it was a series of smaller ones. I want to do a one liner **
>
> For example:
>
> sub rmgtlt {
> $_[0] =~ s/^\<|\>$//g;
> $_[0] =~ s/[\n\r]//$g;
> $_[0] =~ s/\s$//g;
>
> return $_[0];
> }
>
> Just a thought that might make it more clear where the
> problem is. Also, what do you mean by "on one line?" do you
There is no problem with the regex, the regex works like it should.
> mean without \n or \r's anywhere in the string?
** No I mean do the substitution and return the result all in one line of perl code.
You know, a one liner.
Instead of
$_[0] =~ s/whatever//;
return $_[0];
Do it like :
return ?SYNTAX HERE? s/whatever//;
Thanks
Dan
>
> --------------------------
> David Olbersen
> iGuard Engineer
> 11415 West Bernardo Court
> San Diego, CA 92127
> 1-858-676-2277 x2152
>
>
> > -----Original Message-----
> > From: Dan Muey [mailto:[EMAIL PROTECTED]
> > Sent: Tuesday, March 11, 2003 9:00 AM
> > To: [EMAIL PROTECTED]
> > Subject: return a regex substitution in one line
> >
> >
> > I have this subroutine and it does what I need ::
> >
> > print rmgtlt($var);
> >
> > sub rmgtlt {
> >
> > $_[0] =~ s/^\<|\>$|\n|\r|\s$//g;
> > return $_[0];
> > }
> >
> > Is there a way to so the substitution and return the result
> > in one line?
> >
> > Like ::
> >
> > sub rmgtlt {
> > return ??? $_[0] =~ s/^\<|\>$|\n|\r|\s$//g;
> > }
> >
> > I tried using parenthesis and using list context ::
> > return my($q) = $_[0] =~ s/(^\<|\>$|\n|\r|\s$)//g; }
> >
> > And you might have figured it returned the number of elements
> > matched and not the newly fixed up variable contentes.
> >
> > Is there a way to do this?
> > I know I must be missing something obvious , thanks for any
> guidance!
> >
> > Dan
> >
> > --
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]