nodejs как заменить; с ',' чтобы сделать запрос sql - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть запрос, который выглядит следующим образом:

INSERT INTO table VALUES ('47677;2019;2019;10T-1001-10010AS;A05;International;TieLineKoman-KosovoB;L_KOM-KOSB;2018;NULL;NULL;;NULL;Tieline;NULL;10XAL-KESH-----J;0;3') 

, который создается путем анализа файла CSV.

Запрос не в правильной форме, я должен заменить все точка с запятой со строкой ',' (запятая внутри одинарных кавычек). То, что я хочу получить:

('47677','2019','2019','10T-1001-10010AS','A05','International','TieLineKoman-KosovoB','L_KOM-KOSB','2018','NULL','NULL','','NULL','Tieline','NULL','10XAL-KESH-----J','0','3') 

Я пытался сделать это разными способами, но в итоге я добавил обратные слеши в мою строку. Вот что я получаю:

"INSERT INTO AllocatedEICDetail VALUES ('47677\\',\\'2019\\',\\'2019\\',\\'10T-1001-10010AS\\',\\'A05\\',\\'International\\',\\'TieLineKoman-KosovoB\\',\\'L_KOM-KOSB\\',\\'2018\\',\\'NULL\\',\\'NULL\\',\\'\\',\\'NULL\\',\\'Tieline\\',\\'NULL\\',\\'10XAL-KESH-----J\\',\\'0\\',\\'3')"

Есть идеи, как сделать это правильно, без добавления обратной косой черты?

Спасибо!

1 Ответ

0 голосов
/ 19 февраля 2020
//the string you have
const string = '47677;2019;2019;10T-1001-10010AS;A05;International;TieLineKoman-KosovoB;L_KOM-KOSB;2018;NULL;NULL;;NULL;Tieline;NULL;10XAL-KESH-----J;0;3';
//the string you need:
const targetString = string.replace(/\;/g,',');

Вы указываете небольшое регулярное выражение между косыми чертами в замене, которое представляет собой простое ';', присваиваете ему флаг 'g' для глобального, который заменит все экземпляры, а во втором аргументе указываете, что вам нужно заменено на.

...