Changed regex to allow trailing . and !