Комментарии 6
Если у вас есть проблема, и вы пытаетесь решить её с помощью регулярных выражений, то у вас две проблемы (ц) скрыто в глубине веков.
Мощная вещь, согласен. Но при правильном применении.
0
НЛО прилетело и опубликовало эту надпись здесь
id=([0-9])+ только плюсик в скобки надо поместить, нет? если речь про ссылку на *число*
+1
А можно здесь задать вопрос? На днях искал способ заменить в VS Code вторую и третью точку в строке запятыми, больше ничего не меняя. То есть, из строки вида
12.34, 5.67. 89, 12.34, 56.789,…
надо сделать
12.34, 5,67, 89, 12.34, 56.789,…
(пробелы и знаки +- возможны в любых местах, количество цифр в числе произвольное). Довольно быстро сообразил, что надо копать регулярные выражения (раньше ими не пользовался), и даже их немного освоил. Но с исходным вопросом так и не разобрался… понял, что быстрее сделать программу. Теперь мучаюсь угрызением совести за изобретение очередного велосипеда :-((
12.34, 5.67. 89, 12.34, 56.789,…
надо сделать
12.34, 5,67, 89, 12.34, 56.789,…
(пробелы и знаки +- возможны в любых местах, количество цифр в числе произвольное). Довольно быстро сообразил, что надо копать регулярные выражения (раньше ими не пользовался), и даже их немного освоил. Но с исходным вопросом так и не разобрался… понял, что быстрее сделать программу. Теперь мучаюсь угрызением совести за изобретение очередного велосипеда :-((
0
Примерно так: ([^\.]+\.[^\.]+)\.([^\.]+)\.(.*)
заменяем на $1,$2,$3
Например входной файл:
$ cat /tmp/test
12.34, 5.67. 89, 12.34, 56.789
121.11, 888.22. -19.34, +40.789
-1.10, +8.1. -500.43, 1000.789, 10.1, 50.33, -90.111, 81.300
any symbols bla bla 10.1, 9.900. 300.1
После замены:
Или же через sed:
$ cat /tmp/test | sed 's/\([^\.]\+\.[^\.]\+\)\.\([^\.]\+\)\.\(.*\)/\1,\2,\3/g'
12.34, 5,67, 89, 12.34, 56.789
121.11, 888,22, -19.34, +40.789
-1.10, +8,1, -500.43, 1000.789, 10.1, 50.33, -90.111, 81.300
any symbols bla bla 10.1, 9,900, 300.1
0
Лучший сайт для отладки регулярных выражений:
https://regex101.com/
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Кунг-фу стиля Linux: регулярные выражения