powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Поможите кто в регулярке силён
5 сообщений из 5, страница 1 из 1
Поможите кто в регулярке силён
    #39335139
persona_grato
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
0081.22.61.106
0081.22.00.106



Нужно в ip-адресах в каждом октете удалить лидирующие 0,
и, если в октете все 0, то оставить только один 0.
...
Рейтинг: 0 / 0
Поможите кто в регулярке силён
    #39335163
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
'0+([1-9]\d*|0)'
...
Рейтинг: 0 / 0
Поможите кто в регулярке силён
    #39335193
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Elic,

Код: plsql
1.
regexp_replace(s, '(^|\.)0+([1-9]\d*|0)', '\1\2')
...
Рейтинг: 0 / 0
Поможите кто в регулярке силён
    #39335500
persona_grato
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, господа.
...
Рейтинг: 0 / 0
Поможите кто в регулярке силён
    #39335728
Фотография SY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AmKad
Код: plsql
1.
regexp_replace(s, '(^|\.)0+([1-9]\d*|0)', '\1\2')



Или проще:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
with t as (
           select '0081.22.61.106' ip from dual union all
           select '0081.22.00.106' from dual
          )
select  ip,
        regexp_replace(ip,'(^|\.)0+(\d+)','\1\2') new_ip
  from  t
/

IP             NEW_IP
-------------- -------------
0081.22.61.106 81.22.61.106
0081.22.00.106 81.22.0.106

SQL> 



SY.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Поможите кто в регулярке силён
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]