Замена имен пользователей ссылками в Javascript с помощью регулярных выражений

Я пытаюсь сопоставить имена пользователей в строке, например:

"user: hi, has anyone seen user today user"

Соответствующие случаи:

  • подстрока - это первое слово после пробела в середине окружены пробелами или последним и начинаются с пробела
  • Следующие символы могут следовать за словом, но не возвращаются в результате: ":;"

Следующие символы соответствуют всем регистрам, но возвращают нежелательные пробелы и символы (I хочу заменить только имена пользователей):

/(^(user)[\s|:|;|,])|(\s(user)[\s|:|;|,]?\s)|(\s(user))/gi

В конце я хочу заменить только имя пользователя ссылками.

РЕДАКТИРОВАТЬ: Обратите внимание, что имя пользователя не может быть сопоставлено, если оно является частью URL-адреса или другой строки, за исключением случаев, когда за ним следуют специальные символы.

5
задан jorilallo 22 November 2011 в 18:45
поделиться