Проверьте, заканчивается ли строка

Я хочу проверить, заканчивается ли строка

- v{number}

Так например

hello world           false
hello world - v2      true
hello world - v       false
hello world - v88     true

Не совсем уверен, как поступить с этим RegEx.

var str = 'hello world - v1';
var patt = new RegExp("/^ - v\d*$/");
var res = patt.test(str);
console.log(res);

Как я могу исправить вышеупомянутый RegEx?

 Harish Kumar07 июл. 2016 г., 12:20
@praveen Вы читали вопрос и ответ на этой странице, прежде чем отмечать дубликаты? Это бессмысленно. В этом случае длина конца с константой и заканчивается конкретным символом, здесь длина является переменной, как 'hello world - v1234567890'.
 Harish Kumar07 июл. 2016 г., 12:13
ты можешь использоватьvar patt = new RegExp(" - v[0-9]+$");
 rock32198707 июл. 2016 г., 11:41
использование- v\d+$.......
 Praveen Kumar Purushothaman07 июл. 2016 г., 12:20
@harishkumar Готово.
 fedorqui07 июл. 2016 г., 11:53
Вы связались со страницей в моем ответе, но теперь ваш комментарий исчез. Примечание, я обновил, объясняя, нет необходимости/ и двойное побег из\d.

Ответы на вопрос(1)

Решение Вопроса

Просто используйте это, не проверяя ничего в начале

- v\d+$

Таким образом, вы убедитесь, что он заканчивается- v сопровождаемый по крайней мере одной цифрой. Посмотри вживуюhttps://regex101.com/r/pB6vP5/1

Тогда ваше выражение должно быть:

var patt = new RegExp("- v\\d+$");

Какзаявил Анубхава в другом ответе:

Нет необходимости/Требуется двойной побег для\d.

var str = 'hello world - v15';
var patt = new RegExp("- v\\d+$");
var res = patt.test(str);
console.log(res);

 Praveen Kumar Purushothaman07 июл. 2016 г., 12:26
@TimBiegeleisen Да! Мы должны.RegExp значение.
 Tim Biegeleisen07 июл. 2016 г., 11:45
@PraveenKumar Я не знаю, почему вы удалили свой ответ, логика показалась мне правильной.
 fedorqui07 июл. 2016 г., 11:46
@PraveenKumar это для многострочного соответствия. Таким образом, вы можете включить различные строки в regex101.com, и все они сопоставляются по отдельности.
 Praveen Kumar Purushothaman07 июл. 2016 г., 11:45
Что такоеm флаг? Вы должны включить это в ответ.
 Tim Biegeleisen07 июл. 2016 г., 12:23
@PraveenKumar Да, но вам нужно дважды убежать сtest()? Я не уверен в этом.
 Praveen Kumar Purushothaman07 июл. 2016 г., 12:21
Ах, теперь я понял, почему мой ответ не сработал, @TimBiegeleisen!
 fedorqui07 июл. 2016 г., 12:29
@TimBiegeleisen не нужно извиняться и не нужно высказываться по неуместным причинам:) Я многому научился благодаря комментарию от anubhava несколько дней назад, а теперь и к вашей дискуссии с Praveen!
 Tim Biegeleisen07 июл. 2016 г., 12:27
@fedorqui Upvoted извиниться за оскорбление вашего ответа с помощью подробных комментариев ^ ^

Ваш ответ на вопрос