Убрать хэштеги из строки с помощью JavaScript

У меня есть строка, которая может содержать хэштеги Twitter. Я хотел бы снять его со строки. Как мне это сделать? Я пытаюсь использовать класс RegExp, но он не работает. Что я делаю не так?

Это мой код:

var regexp = new RegExp('\b#\w\w+');
postText = postText.replace(regexp, '');
9
задан Vitor Py 18 August 2010 в 16:32
поделиться

3 ответа

Вот и все:

postText = 'this is a #test of #hashtags';
var regexp = new RegExp('#([^\\s]*)','g');
postText = postText.replace(regexp, 'REPLACED');

Здесь используется атрибут «g», который означает «найти ВСЕ совпадения», вместо остановки при первом появлении.

14
ответ дан 4 December 2019 в 09:34
поделиться

This?

 postText = "this is a # bla и a #bla plus # bla "var regexp = / \ # \ w \ w + \ s? / g postText = postText.replace (regexp, ''); console.log (postText) 
2
ответ дан 4 December 2019 в 09:34
поделиться

Вы можете написать:

// g denotes that ALL hashags will be replaced in postText    
postText = postText.replace(/\b\#\w+/g, ''); 

Я не вижу резона для первого \w. Знак + используется для одного или нескольких вхождений. (Или вас интересуют только хэштеги с двумя символами?)

g обеспечивает "глобальное" соответствие. При использовании метода replace() укажите этот модификатор, чтобы заменить все совпадения, а не только первое.

Источник: http://www.regular-expressions.info/javascript.html

Надеюсь, это поможет.

6
ответ дан 4 December 2019 в 09:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: