Как заменить все специальные символы в строке в nodejs с помощью replace? - PullRequest
0 голосов
/ 05 мая 2020

experience(years)d.o.b (dd/mm/yyyy) - как я могу удалить (),., /, Пробелы из строки, используя функцию одиночной замены в узле. Я хотел бы получить как

experienceyearsdobddmmyyyy

// pgm преобразует xl в json

const exceltojson = require('xlsx-to-json');
const fs = require('fs');
exceltojson({
    input: "xl.xlsx",
    output: 'xl.txt',// Don't need output
    sheet: 'student_Details'
  },
  function(err, result) {
    if (err) {
      console.error(err);
      return;
    }
    else{
      console.log(result+'   result')
      console.log(result)
    }
    const newResult = result.map(obj => {
      const newObj = Object.keys(obj).reduce((acc, key) => {
        const newKey = key.replace(/ /g, '').toLowerCase();
        acc[newKey] = obj[key];
        console.log(newKey+'   newKey ')
        return acc;
      }, {});
      return newObj;
    });
    fs.writeFileSync('xl.json', JSON.stringify(newResult));
  }
)

Ответы [ 2 ]

1 голос
/ 05 мая 2020
> re = /[\(\)\/\.\ ]+/g
/[\(\)\/\.\ ]+/g
> s="(10/04/2020)"
'(10/04/2020)'
> s.replace(re, "")
'10042020'
0 голосов
/ 05 мая 2020

вы можете использовать регулярное выражение для замены всех этих символов.

let str = "experience(years)d.o.b (dd/mm/yyyy)";

function stripedStr(s){
  return s.replace(/[\(,\),\.,\/,\-,\_, ,]/g, "");
}

console.log(stripedStr(str));
...