Я хотел бы преобразовать все экземпляры хэштега в строке в связанный URL:
# hashtag -> должен иметь связанный "#hashtag".
Это #hashtag -> должен быть связан с #hashtag.
Это [url = http://www.mysite.com/#name]named якорь [/ url] -> должен не быть связанным.
Это не очень хороший способ использовать кавычки -> должен не быть связанным.
Вот мой текущий код:
String.prototype.parseHashtag = function() {
return this.replace(/[^&][#]+[A-Za-z0-9-_]+(?!])/, function(t) {
var tag = t.replace("#","")
return t.link("http://www.mysite.com/tag/"+tag);
});
};
В настоящее время это, по-видимому, исправляет экранированные символы (исключая совпадения с амперстендом), обрабатывает именованные якоря, но не связывает #hashtag, если это первое, что есть в сообщении, и, кажется, захватывает включение -2 символа до "#" в ссылке.
Halp!