PHP Preg-Заменить: "точка с цифрами с каждой стороны"


Я пытаюсь просмотреть csv с временными кодами и субтитрами и изменить формат временного кода.

Например:

timecode_in, timecode_out, text
01:09:37.12,01:09:40.11,and we felt very close to them.

Мне нужно заменить все точки во временном коде двоеточиями. Но мне нужно отфильтровать его, чтобы он не менял точки в тексте.

Я думаю, что должен быть способ сказать: "Если точка имеет число с каждой стороны, замените ее двоеточием".

Кто-нибудь может мне помочь с этим? Я никогда раньше не использовал регулярные выражения.

Author: stanparker, 2012-03-22

1 answers

Способ сказать это - Утверждения "взгляд назад" и "взгляд вперед"

(?<=\d)\.(?=\d)

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

(?<=\d) является задним утверждением, которое обеспечивает цифру перед текущей позицией

(?=\d) является предварительным утверждением, которое гарантирует, что цифра опережает текущую позицию

Но эти цифры не являются частью совпадения!

 2
Author: stema, 2012-03-22 20:02:00