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|$)/
In reply to Re: ^N.*(?!00$)
by mikeraz
in thread ^N.*(?!00$)
by ady
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |