I have this regex:
string.replace(/[~!@#$%^&`*()_\+={}[\]|"':;?,\/><,\\]|-+$|-+(?=\.)|\s|^[.]/g, '')
and I have this string: .....domain@#@#$-.com
I want to return domain.com. It works almost fine but it removes only first dot at the beginning, but I want to remove any of dot if it appeal here.
I added something like that ^[.], but I think that I miss $ or + sign. But any of my approach doesn’t work. Any ideas?
>Solution :
You have to add the * to ^[.] at the end of your pattern, [.] this means match only one literal dot. * means match zero or more literal dot from the start of the string . so it will be ^[.]*.
[~!@#$%^&`*()_\+={}[\]|"':;?,\/><,\\]|-+$|-+(?=\.)|\s|^[.]*
See regex demo