Как из текста вытащить первое число?

Тема в разделе "JavaScript", создана пользователем Master2KAZ, 20 сен 2018.

  1. Master2KAZ

    Master2KAZ

    Регистрация:
    25 окт 2014
    Сообщения:
    183
    Симпатии:
    72
    Например, имеем: "1 день", "3-5 дней", "6 - 8 дней", "более 10 дней"
    Нужно получить соответственно: 1, 3, 6, 10

    Я так понимаю нужно составить регулярное выражение, но я в этом не силен. Кто поможет?
     
  2. spy

    spy

    Регистрация:
    15 янв 2013
    Сообщения:
    468
    Симпатии:
    137
    так просто используй int
    Код:
    let str = "6 - 8 дней";
    +str;
    let result = parseInt(str); // 6
     
    Master2KAZ нравится это.
  3. Master2KAZ

    Master2KAZ

    Регистрация:
    25 окт 2014
    Сообщения:
    183
    Симпатии:
    72
    Тогда в случае с "более 10 дней" выдает Nan.
    Но я уже решил с помощью регулярки
    Код:
    var str="6 - 8 дней";
    console.log(str.match(/\D+/g)[0]) // 6
    var str2="более 8 дней";
    console.log(str2.match(/\D+/g)[0]) // 8