Я пытаюсь использовать этот regex (JS):
/\/\*(.*)\*\//g
Заменять
/*
sdandsads
*/
ни с чем.
Но это не работает! Почему?o_O
точка ловит все, кроме новых строк... ( if the dotall is false )
поэтому либо используйте dotall ( как упоминалось в других ответах/комментариях, это не поддерживается в javascript, но я оставлю это здесь для справки )
/\/\*(.*)\*\//gs
либо добавьте пробельные символы \s
в ваши выражения
/\/\*((\s|.)*?)\*\//g
Алан упомянул в своем комментарии плохую производительность от ответа, который я дал, поэтому используйте следующее вместо этого. . ( что переводится как все пробельные символы и все не пробельные символы, так что все... )
/\/\*([\s\S]*?)\*\//g
Две проблемы:
[^]
. Решение:
/\/\*[^]*?\*\//g
Пример:
> '/*abc\ncde*/qqq/*iop\n\njj*/'.replace(/\/\*[^]*?\*\//g, '')
qqq