This isn't exactly C++ related, with the exception of I'm dealing with C++ function names. I'm trying to write a regex that can parse the function names of C++ functions but I only want standalone function names. So the text is also pretty much identicle to a var name except it will end with a (. I can come kind of close and this is what I have so far

Code:
(?![a-z])[^\:,>,\.]([a-z,A-Z]+[_][a-z,A-Z]+)+[(]
To give a better idea of what I'm trying to match, this should match

asdfas_asdfasd_asdfasf(
[asdfas_asdfasd_asdfasf(
(asdfas_asdfasd_asdfasf(

This shouldn't match

asf_as_df::asdfas_asdfasd_asdfasf(
asf_as_df.asdfas_asdfasd_asdfasf(
asf_as_df->asdfas_asdfasd_asdfasf(

Are there any regex gurus out there that can help me out with this?