I\'m trying to find a regexp that only matches strings if they don\'t contain a dot, e.g. it matches stackoverflow, 42abc47 or a-bc-
Use a regex that doesn't have any dots:
^[^.]*$
That is zero or more characters that are not dots in the whole string. Some regex libraries I have used in the past had ways of getting an exact match. In that case you don't need the ^ and $. Having a language in your question would help.
By the way, you don't have to use a regex. In java you could say:
!someString.contains(".");