Ad Widget

Collapse

Препроцессинг. regexp без ошибок или replace c regexp.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Lurker
    Member
    • Nov 2016
    • 83

    #1

    Препроцессинг. regexp без ошибок или replace c regexp.

    Дано:
    На входе строка, содержащая имя температурного датчика Например CPU 1 или Intake 3.
    Нужно заменить всю строку в соответствии с заданнымми табличными значениями. пример
    CPU -> 60
    Intake -> 30
    Если делать через 2 предобработки regexp, то хотябы одна из них не найдёт строки и выдаст ошибку.
    Если делать через replace, то он похоже не поддерживает regexp, а значит нельзя заменить всю строку, можно заменить только полностью совпадающую часть.
    Понятно что можно сделать через яваскрипт, но операция кажется элементарной, неужели она не выполнима стандартной предобработкой?
  • Lurker
    Member
    • Nov 2016
    • 83

    #2
    Вобщем оказалось проще разобраться с яваскриптом. Решение кому интересно. 0 возвращает, если совпадений нет
    var intake = new RegExp("^Intake");
    var cpu = new RegExp("^CPU");
    var exhaust = new RegExp("^Exhaust");
    var na = new RegExp("^N/A");
    if (intake.test(value))
    return(30);
    else
    if (cpu.test(value))
    return(60);
    else
    if (exhaust.test(value))
    return(40);
    else
    if (na.test(value))
    return(35);
    else
    return(0);​

    Comment

    Working...