|
|
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Помогите, пожалуйста, разобраться как сделать запрос: Напишите запрос, выбирающий фамилию сотрудника (поле last_name) и его телефон (поле phone) для всех сотрудников. Причем в телефоне все символы, кроме стоящих в начале и в конце, должны быть заменены на символ «_». Например, «8-(912)- 123-45- 67» должен быть заменён на «8_7». ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 17:56 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Читаем доку: ^ - начало строки $ - конец строки . - один любой символ * - повторение предыдущего символа/группы 0 или более раз () - группировка \n - ссылка на группу n Посему: ^. - первый символ строки .$ - последний символ строки .* - любой символ повторенный 0 или более раз Соединяем и группируем то что нам нужно: (^.).*(.$) Ну и: Код: plsql 1. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 18:30 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
можно в качестве ненормального подхода и примитивно подойти, без регулярок: Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 20:14 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Fogel, length не нужен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 20:46 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
SY, Спасибо большое! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 20:47 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
А подскажите еще, пожалуйста, как при помощи регулярных выражений вывести объект, который состоит только из одного слова, все символы которого, кроме первого – прописные английские буквы, а первый символ – заглавная английская буква. Ничего более содержаться не должно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 20:50 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Ты Даша, это, доку-то почитай: [a-z], [A-Z] SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 21:02 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Dasha151515все символы которого, кроме первого – прописные английские буквы, а первый символ – заглавная английская буква. прописная = заглавная. По твоему описанию, получается, что все буквы "БОЛЬШИЕ" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 21:28 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
-1)Fogel, length не нужен. ес, оф кос ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 21:28 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Fogel, Там нужно, чтобы только первая была большая, а все остальные маленькие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 21:31 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Dasha151515Fogel, Там нужно, чтобы только первая была большая, а все остальные маленькие. Код: plsql 1. Кому нужно на регулярке, тот пусть пишет на регулярке. Viam supervadet vadens (с) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 21:45 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
А что можно изменить, чтобы выводилось только одно слово? REGEXP_LIKE(last_name, '(^[A-Z])[a-z]', 'c') ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 21:56 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Dasha151515А что можно изменить, чтобы выводилось только одно слово? REGEXP_LIKE(last_name, '(^[A-Z])[a-z]', 'c') Если ты о "вывести объект, который состоит только из одного слова, все символы которого, кроме первого – прописные английские буквы, а первый символ – заглавная английская буква", то ты на верном пути. ^[A-Z] это первый символ – заглавная английская буква. Дальше у тебя [a-z] прописная английская буква, но одна. Символ + это повторение предыдущего символа/группы 1 или более раз. Но это еще не значит что за прописными английскими буквами больше ничего нет. Для этого используем $ - конец строки. Получаем: Код: plsql 1. Ну а case-sensitive matching ('c') - значение по-умолчанию и можно не указывать. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 22:30 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
FogelКому нужно на регулярке, тот пусть пишет на регулярке. А как насчет "состоит только из одного слова". SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2017, 22:34 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
SYFogelКому нужно на регулярке, тот пусть пишет на регулярке. А как насчет "состоит только из одного слова". SY. так я вообще иначе условие понял, но если продолжать этот бред, то неизвестно, какие вообще там наборы, поэтому, если, например, предложение (слова через пробел и знаки препинания), то так: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2017, 01:34 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Fogel Код: plsql 1. плохая из тебя сестра таланту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2017, 01:55 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
SYЧитаем доку: ^ - начало строки $ - конец строки . - один любой символ * - повторение предыдущего символа/группы 0 или более раз () - группировка \n - ссылка на группу n Посему: ^. - первый символ строки .$ - последний символ строки .* - любой символ повторенный 0 или более раз Соединяем и группируем то что нам нужно: (^.).*(.$) Ну и: Код: plsql 1. SY. не могли бы подсказать, пожалуйста, что значит последние символы "'\1_\2')" ? почему именно 1 и 2? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2017, 21:37 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
LitwaSY Код: plsql 1. не могли бы подсказать, пожалуйста, что значит последние символы "'\1_\2')" ? почему именно 1 и 2? Это т.н. "back reference", ссылка на найденное первой \1 и второй \2 скобками, т.е. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2017, 21:51 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Litwa, Код: plsql 1. 2. Соответственно Т.е. \1 есть ссылка на первую группу а \2 cоответственно на вторую. Шаблон у нас '(^.).*(.$)','\1_\2'. Значит \1 есть ссылка на (^.) что есть первый символ исходной строки a \2 есть ссылка на (.$) что есть последний символ исходной строки. В результате получаем первый символ исходной строки, подчеркивaние и последний символ исходной строки. Sėkmės (судя по нику) SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2017, 21:58 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
SY, substr(PHONE_NUMBER,-1 ,1 ) ps спасибо за разяснения ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2017, 10:11 |
|
||
|
Регулярные выражения
|
|||
|---|---|---|---|
|
#18+
Stax, SY Коллеги, спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2017, 13:52 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=135&tid=1884817]: |
0ms |
get settings: |
10ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
42ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 344ms |

| 0 / 0 |
