Regex принимает косые черты и `в C #, хотя я не разрешаю никаких [дубликатов]

Используя ES2017, вы должны иметь это как объявление функции

async function foo() {
    var response = await $.ajax({url: '...'})
    return response;
}

и выполнить его следующим образом.

(async function() {
    try {
        var result = await foo()
        console.log(result)
    } catch (e) {}
})()

Или синтаксис Promise

foo().then(response => {
    console.log(response)

}).catch(error => {
    console.log(error)

})
46
задан Wintermute 21 April 2015 в 12:14
поделиться

3 ответа

Поскольку ваш класс символов [A-z] соответствует этому символу.

[A-z] соответствует [, \, ], ^, _, ` и английские буквы.

На самом деле это распространенная ошибка. Вы должны использовать [a-zA-Z] вместо того, чтобы разрешать только английские буквы.

Вот визуализация из Expresso, показывающая, что на самом деле охватывает диапазон [A-z]:

screenshot from Expresso showing the ASCII table, where you can see what the [A-z] range actually covers [/g1]

Итак, это регулярное выражение (с опцией i) не будет записывать вашу строку.

^(?=.*[0-9])(?=.*[a-z])[0-9a-z-]{17}$

На мой взгляд, это всегда безопаснее использовать опцию Ignorecase, чтобы избежать такой проблемы и сократить регулярное выражение.

128
ответ дан user2314737 31 August 2018 в 17:54
поделиться

Вы разрешаете A-z (капитал «A» через нижний «z»). Вы не говорите, какой пакет регулярных выражений вы используете, но не обязательно ясно, что A-Z и a-z смежны; между ними могут быть другие символы. Попробуйте это вместо:

^(?=.*[0-9])(?=.*[A-Za-z])[0-9A-Za-z-]{17}$

Кажется, что я отвечаю вашим критериям для меня в regexpal.

5
ответ дан Marc Fraioli 31 August 2018 в 17:54
поделиться

regex использует ASCII печатные символы из пробела в диапазон тильдов.

Всякий раз, когда мы используем маркер [A-z], он соответствует следующей таблице выделенных символов. Если мы используем маркер [ -~], он соответствует начиная с SPACE до тильды.

15
ответ дан Premraj 31 August 2018 в 17:54
поделиться
Другие вопросы по тегам:

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