Помогите написать регулярку

Тема в разделе "Решение различных задач по парсингу", создана пользователем Vadimdas, 26 сен 2022.

  1. Vadimdas

    Vadimdas Member Пользователи

    Регистрация:
    24 дек 2016
    Сообщения:
    45
    Добрый день!
    Не силён в регулярных выражениях.
    Помогите с такой задачей.
    Приходят такие числовые данные, размеры в миллиметрах, нужно преобразовать в сантиметры.
    Данные приходят в двух видах, пример:
    1560
    850
    Нужно получить
    156.0
    85.0
    В парсинге присутствуют товары с разными значениями, т.е четырёх значные и трёх значные. Соответственно нужно выражение - если три знака, то после второго точка, если четыре, то после третьего.
    Смысл в том, что имеем много исходных сайтов производителей с различными мерами - кто в сантиметрах, кто в миллиметрах. Нужен один результат - в сантиметрах.
    Заранее спасибо!
     
    Последнее редактирование: 26 сен 2022
  2. inotoxic

    inotoxic Well-Known Member Пользователи

    Регистрация:
    13 сен 2015
    Сообщения:
    874
    Через поиск замену
    0|.0
     
  3. Vadimdas

    Vadimdas Member Пользователи

    Регистрация:
    24 дек 2016
    Сообщения:
    45
    Так не прокатит, эти числа как пример, к Нолю не привяжешься, может разная комбинация 2003, 1825 и т п.
     
  4. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.442
    Адрес:
    Latvia
    Дело кропотливое, готов помочь на платной основе
     
  5. Vadimdas

    Vadimdas Member Пользователи

    Регистрация:
    24 дек 2016
    Сообщения:
    45
    Понял, спасибо. Давно хотел начать изучать регулярки. Похоже что дальше без них мне будет трудновато. Попробую освоить в какой то степени. Пока дело терпит. Если что, обращусь. Спасибо!
     
  6. Vadimdas

    Vadimdas Member Пользователи

    Регистрация:
    24 дек 2016
    Сообщения:
    45
    А сколько будет стоить?
     
  7. Vitaliy_S

    Vitaliy_S Member Пользователи

    Регистрация:
    20 янв 2019
    Сообщения:
    49
    Город:
    Уфа
    Так попробуйте
    Код:
    re:([\d])$|,$1
     
  8. Vadimdas

    Vadimdas Member Пользователи

    Регистрация:
    24 дек 2016
    Сообщения:
    45
    Огромное спасибо! Работает!
     
  9. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.442
    Адрес:
    Latvia
    Достаточно перед цифрами поставить запятую, или фокус в чем то другом?)

    [​IMG]
     
  10. Vadimdas

    Vadimdas Member Пользователи

    Регистрация:
    24 дек 2016
    Сообщения:
    45
    Да, фактически если упростить задачу, то перед последней цифрой поставить запятую. В моём случае товар не превышает размер более 3-х метров. Выражение присланное Виталием меня устроило и решило мою задачу.
     
    kagorec нравится это.

Поделиться этой страницей