Pages

regexp

function f2c(x) {
  function convert(str, p1, offset, s) {
    return `${Math.trunc((p1 - 32) * 5/9)}C`;
  }
  let reg = /(-?\d+(?:\.\d*)?)F\b/;
  return x.replace(reg, convert);
}


f2c("la valeur de 100F vaut 100F"); // "la valeur de 37C vaut 100F"

(-?                 # pour une valeur négative (optionnel) : 
  \d+               #  recherche au - 1 chiffre  (obligatoire)
  (?:               #   essai de matcher : 
    \.\d*           #     un . suivi de zéro ou plusieurs chiffres
  )?                #  groupe option sans référence, donc soit 12.3 ou 12)
)                   # groupe avec référence
F\b                 # F est en fin de nombre 12.3F blabla
JS Bin on jsbin.com