'-' в регулярных выражениях

312
10 февраля 2017, 05:44

Здравствуйте, пытаюсь проверить число, например -42, вроде как, в alert должно быть написано только это число, но пишется -42,-. Как сделать так чтоб второй минус не появлялся?

var task = '-42'; 
var t2 = task.match(/(\-|\+)\d+$/); 
alert(t2);

Answer 1

1) Можно прикрепить индекс

var task = '-42'; 
var t2 = task.match(/(\-|\+)\d+$/)[0]; 
alert(t2);

2) Задаём + или - в не запоминающихся скобках

var task = '-42'; 
var t2 = task.match(/(?:\-|\+)\d+$/); 
alert(t2);

Answer 2

Вы все сделали верно, просто результат возвращается в виде массива. В t2[0] содержится полное совпадение, а в t2[1] то что в скобках: (\-|\+)

var task = '-42'; 
var t2 = task.match(/(\-|\+)\d+$/); 
alert(t2[0]); 
alert(t2[1]);

READ ALSO
JSON.parse получаю ошибку Unexpected token o in JSON

JSON.parse получаю ошибку Unexpected token o in JSON

Пытаюсь вернуть через REST API данные в JSON

462
Сделать горизонтальную прокрутку в fotorama

Сделать горизонтальную прокрутку в fotorama

ЗдравствуйтеИспользую плагин fotorama

280
Отображение пользователей в FullCalendar

Отображение пользователей в FullCalendar

Пытаюсь кастомизировать календарь в такой как на скрине:

249
Ruby on rails MVC

Ruby on rails MVC

Добрый день! Никак не могу реализовать добавление задачи с возможностью выбора раздела для этой задачиЕсть 2 модели:

296