in reply to ^N.*(?!00$)
The easiest on my eyes regex is ( /N.*/ and !/00$/ ) but that will match things you don't want.
Your code example tests for lines, not words, that match your description. For a more generalized, ie embedded in a line, case this should do nicely:
( /(^|\W*)(N.*?)(\W|$)/ and ! ($2 =~ /00$/) )
which will match your test cases on lines by themselves or embedded in longer lines. But not in longer strings! :)
Update
Based on what I learned from tlm's post I'll amend what I suggested to:
/(\W|^)N(?!.*00(\W|$)).*(\W|$)/
|
|---|