2012-08-06 5 views
1

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

«01/11/2012 (фамилия, имя) - Замечания, 02/11/2012 (Last, First) - Дополнительные примечания, 03/11/2012 (последний, первый) - Еще больше заметок, 09/12/2012 (последний, первый) - Вы получаете идею «

Я хотел бы, чтобы каждое примечание падайте на новую строку, заменяя любую запятую, за которой следует число с \ n.

Я пробовал .replace(/,/g, '\n'), но я получаю новую строку в середине имени.
Так что я делаю .replace(/,\d/g, '\n'), однако затем я теряю первый номер даты.

Как я могу найти, # и заменить его на \ n #, где номер такой же, как и ранее?

Я хочу, чтобы результат выглядел так:

01/11/2012 (Last, First) - Notes 
02/11/2012 (Last, First) - More Notes 
03/11/2012 (Last, First) - Even More Notes 
09/12/2012 (Last, First) - You get the idea 

ответ

2

Вы можете использовать захват, чтобы не пропустить этот номер:

s.replace(/,(\d)/g, '\n$1') 
+0

Спасибо, я сделал это в прошлом, я просто был возникли проблемы с поиском синтаксиса в любом месте. Утром в понедельник навыкам Google нужна некоторая работа :) –

+0

Без проблем :). Все утренние поры всегда нуждаются в некоторой настройке. –

2

(Update, извините, просто заметил, что вы не хотите, запятая)

Try ...

.replace(/,(\d)/g, '\n$1') 

Эта группа \d, а затем использует ее (с) на замену

Смежные вопросы