Измените значение ключа, затем удалите ключ в CSV с разделителями-запятыми, используя регулярное выражение

Я получил этот образец:

...,432,3333333,607,5500,617,5000,... ...,66,88,432,22625,607,45330,617,5000,... ...,432,3600000,607,87,617,5000,...

Из файла csv с несколькими столбцами, разделенного запятой, данные должны быть, первый столбец должен быть ключом, второй столбец должен быть значением, поэтому меня попросили сделать, это установить все конкретные ключи на ноль и удалить ключ

Мне нужно удалить все ключи «607» в csv, поэтому приведенное выше должно привести к:

...,432,3333333,0,0,617,5000,... ...,66,88,432,22625,0,0,617,5000,... ...,432,3600000,0,0,617,5000,...

Надеюсь, это можно сделать в регулярном выражении, потому что это больше нельзя сделать в Excel.

Спасибо!


person The Wolf    schedule 29.07.2014    source источник
comment
В ваших данных ключ не отображается в первом столбце? Если в других столбцах вашего набора данных есть какие-либо другие значения 607, вы удалите их, если не укажете конкретный столбец.   -  person beroe    schedule 29.07.2014
comment
Я имею в виду, что количество столбцов четное, поэтому: ...key,value,key,value,key,value,...   -  person The Wolf    schedule 29.07.2014
comment
Я понимаю. Я не думаю, что регулярное выражение является хорошим инструментом для этого. Простой скрипт был бы безопаснее.   -  person beroe    schedule 29.07.2014
comment
Я предпочитаю регулярное выражение, так как это CSV-файл в формате .txt, для которого мне нужен только блокнот.   -  person The Wolf    schedule 29.07.2014


Ответы (2)


Регулярное выражение:

,607,[^,]*

Строка замены:

,0,0

ДЕМО

person Avinash Raj    schedule 29.07.2014
comment
Спасибо чувак! работает даже на ...,1607,3600000,607,87,617,5000,... - person The Wolf; 29.07.2014
comment
Есть ли другие значения 607, в других столбцах? - person beroe; 29.07.2014

Другое решение :)

var s = '...,432,3333333,607,5500,617,5000,...';
var p = /,607,\d+/g
console.log(s.replace(p, ',0,0'));

Работа с jsBin

person hex494D49    schedule 29.07.2014