Как передать выражение регулярного выражения в JSON в API? - PullRequest
1 голос
/ 06 июня 2019

Как я могу передать RegEx в JSON в API без его преобразования в строку? Ниже приведены два кода, которые ссылаются на то, что я хочу и что фактически передается в API. Мне не нужно конвертировать в stringify. Заранее спасибо

//JSON I want to pass
{
    "data": {
        "type": "wood-species",
        "attributes": {
            "description": "test126",
            "abbreviation": /([A - Z])\ w +/  <-REGEX that i want to pass
        }
    }
    }
//JSON that actually pass
{
    "data": {
        "type": "wood-species",
        "attributes": {
            "description": "test126",
            "abbreviation": {}   <-REGEX that actually pass(making regex an empty object)
        }
    }
}

1 Ответ

0 голосов
/ 06 июня 2019

Невозможно сохранить регулярное выражение в строке JSON. Вам нужно будет сохранить ее как фактическую строку и воссоздать ее на принимающей стороне с помощью конструктора RegExp (также отрежьте начальную и конечную косую черту /).

const obj = {
  "abbreviation": "/([A - Z])\w+/"
};

const stringified = JSON.stringify(obj);
const regex = new RegExp(JSON.parse(stringified).abbreviation.slice(1, -1));
console.log(regex);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...