If it must contain at least one character, then:
/^(?!.*?\.\.).+$/s
^ # Matches start of string
(?!.*?\.\.) # Negative lookahead assertion that the input does not contain two successive periods
.+ # Matches one or more characters
$ # Matches the end of the string
The s flag is required else . will not match a newline character. So if the string were, "abc\n..d", the s flag would be required to find the two successive periods.
If you do not want to use the s flag, then use instead of ., [\s\S], which will match any character:
/^(?![\s\S]*?\.\.)[\s\S]+$/
..is found.