Как удалить URL, начинающийся с www. *** из строки с помощью регулярных выражений? - PullRequest
0 голосов
/ 19 марта 2019

Я пытаюсь отфильтровать все URL из строки ввода. В настоящее время у меня есть регулярное выражение, которое может найти URL, начинающиеся с http:// или https:// или ftp://, как показано ниже:

var _input = document.querySelector("#input");
var btn = document.querySelector("#btn");
var results = document.querySelector("#results");

btn.addEventListener("click", function() {
var input_ = _input.value;
var cleanInput = input_.replace(/(?:https?|ftp):\/\/[\n\S]+/g, '');
results.innerHTML = cleanInput;
});
<textarea id="input" rows="5" style="width: 200px;"></textarea>
<button id="btn">SUBMIT</button>
<div id="results"></div>

Какое регулярное выражение я должен использовать, чтобы соответствовать www.***, а также оно не должно быть чувствительным к регистру. http или HTTP также должны совпадать.

1 Ответ

2 голосов
/ 19 марта 2019

Вы можете настроить свое регулярное выражение на

.replace(/(?:(?:http|ftp)s?:\/\/|www\.)[\n\S]+/ig, '');

Детали

  • ig - игнорировать регистр (i) и глобальные (g) модификаторы для сопоставления всех вхождений без учета регистра
  • (?:(?:http|ftp)s?:\/\/|www\.) - https://, http://, ftp://, ftps:// или www.
  • [\n\S]+ - 1 или более символов без пробелов или LF
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...