From: "francisrammeloo@..." Date: 2006-03-10T19:58:42+09:00 Subject: Small regexp question Hi all, I am writing some refactoring code for a C++ project. I need to change: class MyClass { ... } to: class IMP_EXP MyClass { ... } The pattern I used to find a class definition line is: line =~ /^\s*class\s+(\w+)/ But I want to exclude forward class declarations ( class MyClass; ) So I changed my pattern to: line =~ /^\s*class\s+(\w+)\s*[^;]/ --> don't match if line ends with ";" But it doesn't work... Why? I ended up using: if line !~ /;/ and line =~ /^\s*class\s+(\w+)/ Hints? Any help will be appreciated, Best regards, Francis