On Sep 27, 8:58 am, [EMAIL PROTECTED] (Mike Martin) wrote:
> Hi I am trying to capture only the first occurence of a charcter
> followed by any word ie: in this sample text
>
> !this is a first level heading
> !!this is a 2nd level heading
>
> I only want to find the first item and not the second
>
> current code
>
> $line=~s/\!(^\![A-Z][a-z].+)/$1/gc;

This says to search for an exclamation mark, followed by the beginning
of the string (which makes no sense, of course), followed by another
exclamation mark, followed by a capital letter, a lowercase letter,
and then one or more of anything.  And replace all of that with
everything except the first exclamation.

> it either doesnt capture any ! or takes out the first ! when there is a double

No it doesn't.  There is no way this pattern match ever succeeds.
It's not possible to find some character and *then* the beginning of
the string.

Provide sample input and output of what it is you're trying to do.
Your english description of the problem is confusing at best.

Paul Lalli


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to