Одно регулярное выражение - не лучший способ, так как вы не делаете то же самое с @param и @throws vs. @return. Сценарии этого на Perl или Python значительно облегчат эту задачу.
Как говорится, они должны помочь вам ... (Все это в синтаксисе Python) это:
(?i)(?s)(/\*\*.*?\*/)
получит весь комментарий. Это:
^(/\*\*|\*/|\*)(.*)$
с заменой на /// \ 2 превратит все ваши комментарии в комментарии .Net комментариев.
(?i)(?s)(^([^@]+)@param (\b.*\b)(.*?)(?!\* @return)
заменено на
(\1<param name="\2">\3</param>)
должен исправить часть параметра. Аналогично,
(?i)(?s)(^([^@]+)@throws (\b.*\b)(.*?)(?!\*/)
заменено на
(\1<exception cref="\2">\3</param>)
должен исправить часть бросков. Наконец,
@return (.*)
заменено на \ 1 должно исправить @return. (Обратите внимание, что это не установлено как многострочный [Звезда не соответствует символам EOL])
Все это необходимо подключить к сценарию (или запустить, один за другим в выбранном вами редакторе).
Обратите внимание, что они не пытаются учесть какие-либо случайные звезды в ваших порциях @pram, @return, @throw.