|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
как извлечь из строки "Акционерное общество Ромашка" подстроку "Акционерное общество"? Разумеется, слово после "общество" может быть любым другим. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 14:55 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil, Ромашку можно извлечь, например, так: Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 15:09 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
ASNexus, ошибся с постановкой вопроса. есть функция, которая вместо длинной организационной формы проставляет короткую "Акционерное общество" меняет на "АО", к примеру. Как сделать, чтобы функция не переводила в нижний регистр само название организации? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 15:22 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil как извлечь из строки "Акционерное общество Ромашка" подстроку "Акционерное общество"? Разумеется, слово после "общество" может быть любым другим. Перечитайте Ваш вопрос, Там все однозначно? С одной стороны: > ... "Акционерное общество Ромашка" подстроку "Акционерное общество" С другой: > ...слово после "общество" может быть любым другим. Что Вы все же хотите? Учитывать, или не учитывать пробелы? Про параметр occurrence в описании функций INSTR и REGEXP_INSTR Вы прочитали? Дока... occurrence - is an integer indicating which occurrence of substring in string Oracle should search for. The value of occurrence must be positive. If occurrence is greater than 1, then the database does not return on the first match but continues comparing consecutive substrings of string, as described above, until match number occurrence has been found. для информации Студентам, желающим помощи HOWTO :: Как правильно задавать вопросы Как мне оформить свое сообщение? Чтобы Вам помогли: 1) Полная и точная постановка задачи (без сокращений), что на входе, что на выходе 2) Подготовьте тестовые данные, лучше в виде with например (не ваш случай): Код: plsql 1. 2. 3. 4. 5.
3) Покажите что сделали, чтобы было видно что не халяву просите 4) используйте Тэги, читать код без них неудобно ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 15:24 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
ASNexus Ромашку можно извлечь, например, так: Код: plsql 1.
A извлечь Акционерное общество Код: plsql 1.
или, если возможны строки: Код: plsql 1.
или, если возможны строки: Код: plsql 1.
SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 15:25 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil, А простого replace недостаточно? Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 15:26 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
ASNexus Murmakil, А простого replace недостаточно? 'Акционерное общество "Акционерное общество любителей выпить пивка на халяву"' SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 15:34 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
SY ASNexus Murmakil, А простого replace недостаточно? 'Акционерное общество "Акционерное общество любителей выпить пивка на халяву"' SY. Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 15:50 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
вот мое решение. Код: plsql 1. 2. 3. 4. 5. 6. 7.
Как избавиться от необходимости добавлять цифру в конце? Ведь если будет ФГБОУ, например, то произойдет смещение. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 09:52 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
с replace таких проблем вроде нет Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 11:52 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
где же все любители написать бессмысленные строки кода и боящиеся написать лишнюю строчку кода без оплаты?? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 11:55 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
[quot Murmakil#22187986]где же все любители написать бессмысленные строки кода и боящиеся написать лишнюю строчку кода без оплаты?? авторКак сделать, чтобы функция не переводила в нижний регистр само название организации? покажите код, и определитесь что же надо сделать? АО РОМАШКА заменить на АO Ромашка? .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 12:22 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil, У тебя весьма тухлая задача, которая не имеет чётко определённого решения. Бухи могут в поле org.name загнать любую херню. Парсер под такое не сделаешь. По идее вообще надо нормализовать и отделять огр.форму от названия. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 12:35 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil Как избавиться от необходимости добавлять цифру в конце? Ведь если будет ФГБОУ, например, то произойдет смещение. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
или надо на sql? ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 12:45 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Мне сейчас сказали, что алгоритм не рабочий в том плане, что вместо пробела операционистки могут по ошибке вставить любой символ, поэтому на пробел смысла нет ориентироваться. Думаю решение д.б. таким, что прописать все фгбу, ооо, ОАО и прочие формы и после них шло название организации из первой переменной, в которой прописана полная организационная форма. Вроде через регулярные выражения можно сделать, но я хз как. С ораклом до этого не работал ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 13:25 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil, запретить ввод "огр.формы" (выбирать из списка) ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 14:56 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Stax, ... i1:=instr(p2, ' ') ... а сюда можно прописать все организационные формы, если использовать regexp_instr? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 15:36 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil Stax, ... i1:=instr(p2, ' ') ... а сюда можно прописать все организационные формы, если использовать regexp_instr? не понял вопрос p2 ето результат работы существующей ф-ции, "которая вместо длинной организационной формы проставляет короткую и переводит в нижний регистр само название организации " p2:=my_func('Закрытое акционерное общество "Ромашка"'); --'ЗАО "ромашка"'; там всегда есть пробел боремся с "переводит в нижний регистр" ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 15:59 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil, атомарные данные + справочники = твое спасение. В том виде, как есть, задача устойчивого решения не имеет ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 16:02 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Stax, ну а можно прописать там ОАО, ООО, ФГБУ и прочее, чтобы компилятор понимал, что после такого сочетания символов надо возвращать подстроку из p1? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 16:09 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil ну а можно прописать там ОАО, ООО, ФГБУ и прочее, чтобы компилятор понимал, что после такого сочетания символов надо возвращать подстроку из p1? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 16:16 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Elic, а ты можешь промолчать, если по существу нечего сказать? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 16:21 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil Elic, а ты можешь промолчать, если по существу нечего сказать? Murmakil Мне сейчас сказали, что алгоритм не рабочий ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 16:23 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Elic, действительно, зачем этот форум нужен. пусть каждый сам ходит по граблям и изобретает велосипед ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 16:37 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil Stax, ну а можно прописать там ОАО, ООО, ФГБУ и прочее, чтобы компилятор понимал, что после такого сочетания символов надо возвращать подстроку из p1? конечно можно, но вбивать в код ОАО, ООО, ФГБУ, крайне нежелательно, добавится напр ПП, и что, менять код? должен быть справочник кодов, по нему проверять надо определится какую задачу мы сдесь обсуждаем 1) как извлечь из строки "Акционерное общество Ромашка" подстроку "Акционерное общество"? тут нужен справочник организационных форм напр набьют "Акциoнернoе обществo Ромашка", o-латиницей, что тогда? ф-ции нет, ее надо написать 2) Как сделать, чтобы функция не переводила в нижний регистр само название организации? функция уже есть , но чутку не походит (переводит в нижний регистр само название) сдесь справочника не надо, бером кусочек ("Ромашка") из исходной строкм как стоит вопрос (1 или 2)? ...... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 17:27 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Stax, 2 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 17:48 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil Stax, ну а можно прописать там ОАО, ООО, ФГБУ и прочее, чтобы компилятор понимал, что после такого сочетания символов надо возвращать подстроку из p1? Справочник сокращений и начиная с какого слова название организации Типа: Код: plsql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 17:53 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 18:03 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil что вместо пробела операционистки могут по ошибке вставить любой символ Вот. Это - твоя главная проблема, а не регулярки с ораклом. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 18:33 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil ну а можно прописать там ОАО, ООО, ФГБУ и прочее, чтобы компилятор понимал, что после такого сочетания символов надо возвращать подстроку из p1? Нет. У тебя операционистки. Они всё сломают. Не надо, чтобы компилятор что-то там понимал, надо чтобы операционистки НЕ МОГЛИ ошибиться, ДАЖЕ если очень этого хотят. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 18:34 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Stax, да все устраивает, но там привязка идет к пробелу же. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 18:41 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
crutchmaster, А что если прописать условие типа если символ не относится к русскому или английскому алфавиту или кавычкам, то заменять его пробелом? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 23:13 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil А что если прописать условие типа если символ не относится к русскому или английскому алфавиту или кавычкам, то заменять его пробелом? ооо "Иванов, Петров-Сидоров + сыновья" ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2020, 08:13 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil Stax, да все устраивает, но там привязка идет к пробелу же. в результате ф-ции после короткого названия пробел, там не может быть другой символ оператор, да, может вбить что угодно(Общ. с огран. Отвест.-Ромашка) , но ф-ция нет, ее рехультат предопределен если ф-ция может вставлять различные разделители(в чем я сильно сомневаюсь) , то их повторить в Вашей обвязке ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2020, 08:45 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Stax, получается невозможно создать функцию, которая могла бы спасти от кривых рук бухов? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2020, 10:32 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil Stax, получается невозможно создать функцию, которая могла бы спасти от кривых рук бухов? имхо надо менять интерфейс ввода если изменить нет возможности (покупная, дорого, неохота и тд) выдавать отчетик где криво набрано название заодно и изучите статистику ошибок под ету статистику можно уже будет и подгонять ф-цию/расширять справочник сокращений .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2020, 10:49 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil А что если прописать условие типа если символ не относится к русскому или английскому алфавиту или кавычкам, то заменять его пробелом? Полумеры. Ну и это надо делать на клиенте, чтобы не было возможности вводить что придёт в голову. С другой стороны это не спасёт от "РЭУ19" и "РЭУ 19", например. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2020, 11:04 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil получается невозможно создать функцию, которая могла бы спасти от кривых рук бухов? Многие искали такую функцию, но это как поиски святого Грааля. Ну и это один из основных законов ведения БД: даёшь бухам вводить первичку руками, получаешь n одинаковых сущностей. Наройте где-нибудь список огранизаций своего города в каком-нибудь 2гисе они, вероятно, будут в нормальном состоянии. Во всяком случае будет что нормализовать и сделать из него словарь, чтобы бухи выбирали из списка. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2020, 11:05 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
набросал пару строк для обработки левых символов. Правда, алгоритм не спасет ,если бухи не знают такого символа как пробел. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2020, 13:25 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Что я не так делаю? Код: plsql 1.
Указываю параметр без чувствительности к регистру, но все равно строка в неизменном виде возвращается. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:18 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil, Код: plsql 1. 2. 3. 4. 5.
..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:45 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:48 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Stax, ничего не понимаю. Все точь-в-точь , но мне возвращается неизменная строка ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:50 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
dmdmdm, понял. у меня версия старая ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:52 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil понял. у меня версия старая ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 12:45 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
dmdmdm, поставил oracle 19c, но с русскими символами не срабатывает почему-то. sqlplus, если что ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2020, 15:28 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil не срабатывает почему-то Отвыкните от подобной отсебятины. Версия, код, ошибки. Test case. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2020, 22:00 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil dmdmdm, поставил oracle 19c, но с русскими символами не срабатывает почему-то. sqlplus, если что nls_sort какой? ...... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2020, 18:29 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
dmdmdm, а никакой ошибки нет. я кодировку поправил и норм. Проверил оракл 11 на regexp_replace и если использовать английские буквы, то функция работает как надо. А если русские буквы, то неизменная строка возвращается. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2020, 14:55 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Stax, binary ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2020, 14:57 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2020, 15:16 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Stax, не могу. список выбора языков пуст ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2020, 16:35 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil, alter session set NLS_SORT=RUSSIAN; ps якщо винда в реестре изменить ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2020, 17:50 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Stax, увы. не сработало ... |
|||
:
Нравится:
Не нравится:
|
|||
11.09.2020, 12:06 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil, в sql*plus попробуйте Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
ps можно и через переменную окружения (cmd/bat/...) задать set NLS_SORT=RUSSIAN sqlplus.exe ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
11.09.2020, 12:36 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Stax, через sqlplus нет возможности. Я pl/sql developer пользуюсь и то приходится запускать его не напрямую, а через цитрикс ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2020, 10:18 |
|
извлечение подстроки по последнему слову
|
|||
---|---|---|---|
#18+
Murmakil Я pl/sql developer пользуюсь ищите как в pl/sql developer поменять nls параметры сессии мож менюшка (крыжик) где-то есть (запрятался) зы чет с трудом верится что alter session не меняет параметр глянуть select * from NLS_SESSION_PARAMETERS; .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2020, 10:42 |
|
|
start [/forum/topic.php?all=1&fid=52&tid=1880907]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
69ms |
get tp. blocked users: |
1ms |
others: | 10ms |
total: | 170ms |
0 / 0 |