|
|
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, подскажите ,пожалуйста, где допущена ошибка? Есть регулярное выражение, но при использовании его в функции Код: plsql 1. не происходит никакого результата. Ниже код который я использую. Код: plsql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 10:55 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Viacheslav.dem, если бы вы описали, что именно ожидаете получить - помощь придет намного быстрее. И вас не смешают с говном за неумение задавать вопросы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 11:04 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Lary Denis, в столбце code содержатся числа вида: 1.1 1.2 1.11 и с помощью регулярного выражения они должны приводится к виду 1.01 1.02 1.11. Но при использовании данного кода этого не выходит, поэтому я и обратился сюда за помощью т.к не могу понять в чем ошибка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 11:15 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Viacheslav.dem[/src] не происходит никакого результата. Ниже код который я использую. Код: plsql 1. Боюсь, что оракель не понимает эту конструкцию. Попробуйте так: Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 11:20 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousБоюсь, что оракель не понимает эту конструкцию. Попробуйте так: '\.(\d)(\D|$)', '\.0\1' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 11:23 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousViacheslav.dem[/src] не происходит никакого результата. Ниже код который я использую. Код: plsql 1. Боюсь, что оракель не понимает эту конструкцию. Попробуйте так: Код: plsql 1. Попробовал. Выдает результат в виде: 1.01 1.02 1.011 2.11. Дело в том, что когда 1-м символом стоит единица, в числе 1.11 оно приписывает ноль. Не подскажите как изменить регулярное выражение чтобы стал результат вида 1.11? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 11:35 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Также число вида 1.1.2 приводит к виду 1.012. А нужен вид 1.01.02. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 11:52 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Viacheslav.dem 1.011 Ммм? Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 11:53 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 11:56 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
В другой ветке, автор писал "Количество вложений которое будет не известно.". То что выше - не отработает для "2.11.1.11.1.1.111.2.3.4", например. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 12:03 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousViacheslav.dem 1.011 Ммм? Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Вот мой результат запроса: Код: plsql 1. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 12:08 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Да, количество вложений которое будет неизвестно. Прошу прощения что не упомянул сразу об этом сразу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 12:10 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Фанат Elic-aВ другой ветке, автор писал "Количество вложений которое будет не известно.". То что выше - не отработает для "2.11.1.11.1.1.111.2.3.4", например. 1. с очевидностью надо добавить в строку замены \2 2. Специально для фанатов Виталия: по доке https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions130.htm как раз отработает :) По факту - отработает через одно вхождение, но можно повторить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 12:23 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
При неизвестном кол-ве одной формулой не обойдёшься, т.к. замена идёт не по экземпляру, а по подходящей маске - маска должна учитывать кол-во точек в данном случае, которое, как следствие, должно быть заранее известно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 12:38 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
FogelПри неизвестном кол-ве одной формулой не обойдёшься Неверно. См. доку, в конце концов - ссылку я привел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 15:24 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousFogelПри неизвестном кол-ве одной формулой не обойдёшься Неверно. См. доку, в конце концов - ссылку я привел. покажи пример выполнения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 15:50 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Fogelandrey_anonymousпропущено... Неверно. См. доку, в конце концов - ссылку я привел. покажи пример выполнения. Чукча не читатель? Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 15:59 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Ну и применительно к задаче: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 16:08 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousНу и применительно к задаче: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. о чём и речь, где здесь одна формула? 2 формулы FogelПри неизвестном кол-ве одной формулой не обойдёшься ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 16:24 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Fogelо чём и речь, где здесь одна формула? 2 формулы FogelПри неизвестном кол-ве одной формулой не обойдёшься ... Да ну? Об этом ли речь? FogelПри неизвестном кол-ве одной формулой не обойдёшься ... маска должна учитывать кол-во точек в данном случае, которое, как следствие, должно быть заранее известно. Ну и в каком месте маска учитывает количество точек, если речь "о чем"? Речь на самом деле о другом: andrey_anonymousФанат Elic-aВ другой ветке, автор писал "Количество вложений которое будет не известно.". То что выше - не отработает для "2.11.1.11.1.1.111.2.3.4", например. 1. с очевидностью надо добавить в строку замены \2 2. Специально для фанатов Виталия: по доке https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions130.htm как раз отработает :) По факту - отработает через одно вхождение, но можно повторить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 16:33 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
andrey_anonymous... Речь на самом деле о другом ... ага, на самом деле тебе лучше знать, что я написал. можно хоть войну и мир любой регуляркой бесконечно вложенной распарсить. я написал про одну формулу. на этом и надо было остановиться без косноязычных пояснений. кол-во точек, кстати, учитывается. только не в абсолютном выражении, а в признаке чётный/нечётный. по чётному кол-ву достаточно одной формулы. при нечётном - не получается одинаковой маски, одна точка выпадает, поэтому два прохода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 16:56 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Fogelпо чётному кол-ву достаточно одной формулы. Покажи, сказочник :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 16:58 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousFogelпо чётному кол-ву достаточно одной формулы. Покажи, сказочник :) ну ты в ударе сегодня. я не настолько крут, чтобы спускаться с небес на землю. в этом я ошибся - не работает, как я думал. но про одну формулу - это было про одну формулу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 17:18 |
|
||
|
Функция REGEXP_REPLACE
|
|||
|---|---|---|---|
|
#18+
Fogelно про одну формулу - это было про одну формулу. Так и формула одна - присмотрись. Два вызова - потому что oracle не умеет конструкции, позволяющие маску не захватывать . А потому хвостовую точку повторно не читает=> фейлит маску на непосредственно следующим за обнаруженной последовательности ("не хватает" лидирующей точки). Отсюда два вызова. Если этот недостаток устранить, то ты пролетаешь и с самым слабым утверждением про "одну формулу": Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. Ы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 17:33 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39538547&tid=1885024]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
196ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
85ms |
get tp. blocked users: |
2ms |
| others: | 234ms |
| total: | 568ms |

| 0 / 0 |
