Невозможно использовать условие if в JavaScripts (userscript) - PullRequest
0 голосов
/ 01 мая 2020

Я чувствую себя глупо на этот вопрос. Я знаю, как использовать if условие в bash, и есть некоторые различия, которые разрушают мой код. В bash вы можете написать * символ, чтобы показать, что все равно, что там написано, ^ для протокола и =~ для примерно равных. Пример:

url = https://en.m.wikipedia.org/wiki/Solovetsky_Stone
if [[ $url =~ ^.*.wikipedia.org/wiki/* ]]

Это найти все вики-страницы на любом языке и в мобильном режиме или нет. Я не знаю, как это сделать в javascript. Я не могу использовать string1.localeCompare(string2), потому что он показывает только то же самое (0) и a в b и b в a (1, -1). Я хочу запустить скрипт на указанной странице c через сравнение URL-адреса в пользовательском скрипте (javascript).

Извините за мой engli sh.

Ответы [ 2 ]

0 голосов
/ 01 мая 2020

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

const url = "https://en.m.wikipedia.org/wiki/Solovetsky_Stone"
if (/^.*\.wikipedia.org\/wiki\/.*/.test(url)) {
  console.log("Yes it is WIKI")
}
0 голосов
/ 01 мая 2020

То, о чем вы думаете в bash, - это сопоставление регулярных выражений. Вы также можете сделать это в JavaScript с помощью RegExp и String.prototype.match .

В нашем примере оператор if будет быть:

const url = 'https://en.m.wikipedia.org/wiki/Solovetsky_Stone'
if (url.match(/^.*.wikipedia.org\/wiki\/*/)) {
  console.log('wikipedia article');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...