The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Как найти в системе файл, состоящий из 5 и более заглавных букв"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Языки программирования)
Изначальное сообщение [ Отслеживать ]

"Как найти в системе файл, состоящий из 5 и более заглавных букв"  –2 +/
Сообщение от Артем email(??) on 09-Апр-15, 13:30 
Сам код: $ egrep '.*[A-Z][A-Z][A-Z][A-Z][A-Z].*' / -naR 2>/dev/null | head -n 10

Подскажите в чем ошибка? преподаватель говорит, что ход решения верный, а что подправить в программе сказать не может...

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  –1 +/
Сообщение от Vitaly_loki (ok) on 09-Апр-15, 15:26 
> Сам код: $ egrep '.*[A-Z][A-Z][A-Z][A-Z][A-Z].*' / -naR 2>/dev/null | head -n 10
> Подскажите в чем ошибка?

В том, что ты называешь это программированием.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  –1 +/
Сообщение от Pahanivo (ok) on 09-Апр-15, 20:32 
> В том, что ты называешь это программированием.

боюсь что ты дружок сел в лужу :) регекс это само по себе ни что иное как программирование алгоритма поиска!

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

7. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от DeadLoco (ok) on 11-Апр-15, 02:45 
> регекс это само по себе ничто иное как программирование алгоритма поиска!

Скажем так: регекс - это и есть программа, компилируемая в FSA.


Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

2. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Алексей (??) on 09-Апр-15, 17:30 
> Сам код: $ egrep '.*[A-Z][A-Z][A-Z][A-Z][A-Z].*' / -naR 2>/dev/null | head -n 10

Если Вы правильно описали задание в теме, то такое командой egrep Вы найдете файлы содержащие 5 и более заглавных букв внутри файла, а что бы найти файлы состоящие из 5 и более заглавных букв, нужно использовать команду find.

Например так
find / -type f -name '*[A-Z][A-Z][A-Z][A-Z][A-Z]*'

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Pahanivo (ok) on 09-Апр-15, 20:39 
>> Сам код: $ egrep '.*[A-Z][A-Z][A-Z][A-Z][A-Z].*' / -naR 2>/dev/null | head -n 10
> Если Вы правильно описали задание в теме, то такое командой egrep Вы
> найдете файлы содержащие 5 и более заглавных букв внутри файла, а
> что бы найти файлы состоящие из 5 и более заглавных букв,
> нужно использовать команду find.
> Например так
> find / -type f -name '*[A-Z][A-Z][A-Z][A-Z][A-Z]*'

может быть хоть кто -то из вас таки прочитает условие, программисты хреновы :)

"состоящий из" и "содержащий" - это как бы кардинально разные задачи :)

hint + {}
* низя!

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

5. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Алексей (??) on 09-Апр-15, 22:01 

> "состоящий из" и "содержащий" - это как бы кардинально разные задачи :)

Может быть объясните нам, о светлейший, что же именно хочет автор?

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Pahanivo (ok) on 10-Апр-15, 08:36 
> Может быть объясните нам, о светлейший, что же именно хочет автор?

постановка задачи удел таки ТС, я лишь указал на расхождение условий и решения ...

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

9. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от DeadLoco (ok) on 11-Апр-15, 03:02 
Автор хочет файлы (не имена) состоящие (а не содержащие) из 5+ символов диапазона А-Z.
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

8. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от DeadLoco (ok) on 11-Апр-15, 02:53 
> преподаватель говорит, что ход решения верный, а что подправить в программе сказать не может...

Как уже заметили выше, "состоящий из" и "содержащий" - концептуально разные сущности. Поэтому ваш модерн-регекс (egrep же) должен выглядеть так:

"[A-Z]{5}[A-Z]*"
С семантикой сами разберетесь.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

10. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Pahanivo (ok) on 11-Апр-15, 21:10 
> Как уже заметили выше, "состоящий из" и "содержащий" - концептуально разные сущности.

ща программер  слишком гордый, чтобы обращать внимание на астериски
> Поэтому ваш модерн-регекс (egrep же) должен выглядеть так:"[A-Z]{5}[A-Z]*"

он как минимум должен выглядеть так (для решения поставленной задачи!): "^[A-Z]{5}[A-Z]*$" (это касательно только имен, без учета пути)
а лучше так: "^[A-Z]{5,}$"
> C семантикой сами разберетесь.

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

11. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от DeadLoco (ok) on 11-Апр-15, 21:41 
> он как минимум должен выглядеть так: "^[A-Z]{5}[A-Z]*$"
> а лучше так: "^[A-Z]{5,}$"

Не все реализации понимают {5,} - это раз.
А два - ТС не нужен регексп, находящий файлы, у которых хотя бы одна строка состоит из апперкейса латиницы...
Но то такое, с опытом приходит :)

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

12. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Pahanivo (ok) on 11-Апр-15, 22:42 
> Не все реализации понимают {5,} - это раз.

хых, тут лишь бы ТС понимал, что вряд ли  :)
> А два - ТС не нужен регексп, находящий файлы, у которых хотя
> бы одна строка состоит из апперкейса латиницы
...

вооооот, мы плавно подошли к вопросу "а куда нам теперь присунуть наш рэхэкс".
> Но то такое, с опытом приходит :)

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

13. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Andrey Mitrofanov on 11-Апр-15, 23:18 
> вооооот, мы плавно подошли к вопросу "а куда нам теперь присунуть наш

Не не плавно. Пришли к тому, как сейчас тот препод посмеивается над "профессионалами", помогающими всем гуртом ленивому бездельнику. Вот где мастерство-то.

>> Но то такое, с опытом проходит :)

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

14. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от universite email(ok) on 12-Апр-15, 03:16 
>> вооооот, мы плавно подошли к вопросу "а куда нам теперь присунуть наш
> Не не плавно. Пришли к тому, как сейчас тот препод посмеивается над
> "профессионалами", помогающими всем гуртом ленивому бездельнику. Вот где мастерство-то.

Может, кому-то другому пригодятся regexp.

Может подскажите тестовые задачи для составления regexp?
А может и подскажете, где найти генератор таких заданий...

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

16. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от DeadLoco (ok) on 14-Апр-15, 22:33 
> Может подскажите тестовые задачи для составления regexp?

1)  Muammar Qaddafi
2)  Mo'ammar Gadhafi
3)  Muammar Kaddafi
4)  Muammar Qadhafi
5)  Moammar El Kadhafi
6)  Muammar Gadafi
7)  Mu'ammar al-Qadafi
8)  Moamer El Kazzafi
9)  Moamar al-Gaddafi
10) Mu'ammar Al Qathafi
11) Muammar Al Qathafi
12) Mo'ammar el-Gadhafi
13) Moamar El Kadhafi
14) Muammar al-Qadhafi
15) Mu'ammar al-Qadhdhafi
16) Mu'ammar Qadafi
17) Moamar Gaddafi
18) Mu'ammar Qadhdhafi
19) Muammar Khaddafi
20) Muammar al-Khaddafi
21) Mu'amar al-Kadafi
22) Muammar Ghaddafy
23) Muammar Ghadafi
24) Muammar Ghaddafi
25) Muamar Kaddafi
26) Muammar Quathafi
27) Muammar Gheddafi
28) Muamar Al-Kaddafi
29) Moammar Khadafy
30) Moammar Qudhafi
31) Mu'ammar al-Qaddafi
32) Mulazim Awwal Mu'ammar Muhammad Abu Minyar al-Qadhafi

Это из gnu-grep, еслишо. А в сырцах PCRE лежит здоровенный нажористый тест-сьют.
Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

15. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Pahanivo (ok) on 12-Апр-15, 20:37 
> Не не плавно. Пришли к тому, как сейчас тот препод посмеивается над
> "профессионалами", помогающими всем гуртом ленивому бездельнику. Вот где мастерство-то.

стоп стоп стоп - мы как бы нарочито не даем решения :) мы как бы тоже не жирные тролли :)

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

17. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Black_Ru email on 24-Апр-15, 23:13 
find /home | egrep -e '/[A-Z]{5,5}\.'

Перед тестировнаием следует включить песню: "We are the champions, my friend".

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

18. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от universite email(ok) on 25-Апр-15, 01:59 
> find /home | egrep -e '/[A-Z]{5,5}\.'
> Перед тестировнаием следует включить песню: "We are the champions, my friend".

Не правильно.
1) система не только в /home
2) слишком много выделится энтропии

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

19. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Black_Ru email on 25-Апр-15, 08:47 
>> find /home | egrep -e '/[A-Z]{5,5}\.'
>> Перед тестировнаием следует включить песню: "We are the champions, my friend".
> Не правильно.
> 1) система не только в /home
> 2) слишком много выделится энтропии

Заменяем home на /
Даввим после точки еще несколько символов и знако конца строки

find / | egrep -e '/[A-Z]{5,5}\.[a-z0-9]{1,100}$'


И снова споем песню

Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

20. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  –1 +/
Сообщение от Black_Ru email on 25-Апр-15, 11:38 
Добавим файлы без расширений

find /home | egrep -e '/[A-Z]{5,5}\.[a-z0-9]{0,}$|/[A-Z]{5,5}$'

Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

21. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Black_Ru email on 25-Апр-15, 11:42 
find / | egrep -e '/[A-Z]{5,5}\.[a-z0-9]{0,}$|/[A-Z]{5,5}$'

Т.е.  в итоге найдем все файлы из пяти букв в верхнем регистре, директории и файлы без расширений.


Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

22. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Black_Ru email on 25-Апр-15, 11:45 
> find / | egrep -e '/[A-Z]{5,5}\.[a-z0-9]{0,}$|/[A-Z]{5,5}$'
> Т.е.  в итоге найдем все файлы из пяти букв в верхнем
> регистре, директории и файлы без расширений.

Поскольку в условии было из 5 и более, то увеличим область

find / | egrep -e '/[A-Z]{5,}\.[a-z0-9]{0,}$|/[A-Z]{5,}$'

Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

23. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Pahanivo (ok) on 25-Апр-15, 13:47 
ну все уже поняли что ты прочитал ман про регексы.
Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

24. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Black_Ru email on 25-Апр-15, 14:25 
Нет, еще не все :)

Я хочу, чтобы автор понял, что регулярные выражения надо полюбить :)

Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

25. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Pahanivo (ok) on 25-Апр-15, 21:16 
> Я хочу, чтобы автор понял, что регулярные выражения надо полюбить :)

проповедуешь регексофилию?

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

26. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Black_Ru email on 25-Апр-15, 23:09 
>> Я хочу, чтобы автор понял, что регулярные выражения надо полюбить :)
> проповедуешь регексофилию?

Да, это была шутка.
Преподаватели обычно так шутят: "вы должны полюбить мой предмет" .

Особенно математики любят твердить, что надо любить уравнения .

Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

27. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Pahanivo (ok) on 26-Апр-15, 20:41 
> Да, это была шутка.
> Преподаватели обычно так шутят: "вы должны полюбить мой предмет" .
> Особенно математики любят твердить, что надо любить уравнения .

Ну вот вы даже эту шутку не осилили - тут надо понимать кто и кого в итоге "любит".

Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

28. "Как найти в системе файл, состоящий из 5 и более заглавных букв"  +/
Сообщение от Black_Ru email on 26-Апр-15, 23:01 
- Что может быть проще регулярных выражений?
- Только регулярные выражения!
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Слёрм
Inferno Solutions
Hosting by Ihor
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2019 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру