The OpenNET Project / Index page

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




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Поиск текста, !*! Djeck, 16-Янв-14, 22:42  [смотреть все]
test
<div>uyiuyewrwuriuo eerer rwerw rwerw<> <a href="index.html">shuba 28900 rub.</a>
</div>

sh
#!/bin/bash
cat test | sed -r 's/^.*uba ([0-9]+) rub.*$/\1/'

Запускаю и вижу:
28900
</div>

А нужно получить только цифру 28900
А получается что есть цифра и хвост за ней, что не так в регулярке? Почему вылезает </div> ?

  • Поиск текста, !*! Led, 03:22 , 17-Янв-14 (1)
    > А получается что есть цифра и хвост за ней, что не так
    > в регулярке? Почему вылезает </div> ?

    man sed

  • Поиск текста, !*! pavel_simple, 09:02 , 17-Янв-14 (2)
    >[оверквотинг удален]
    > </div>
    > sh
    > #!/bin/bash
    > cat test | sed -r 's/^.*uba ([0-9]+) rub.*$/\1/'
    > Запускаю и вижу:
    > 28900
    > </div>
    > А нужно получить только цифру 28900
    > А получается что есть цифра и хвост за ней, что не так
    > в регулярке? Почему вылезает </div> ?

    man xmlstarlet

    • Поиск текста, !*! Andrey Mitrofanov, 09:21 , 17-Янв-14 (4)
      >> в регулярке? Почему вылезает </div> ?
      > man xmlstarlet

      -bash: xmlstarlet: команда не найдена

      Совсем уже со своим xml. Если не выстрелил grep, потом не выстрелил sed, то awk -f \< '...' и не балуйся.

      • Поиск текста, !*! pavel_simple, 09:49 , 17-Янв-14 (5)
        >>> в регулярке? Почему вылезает </div> ?
        >> man xmlstarlet
        > -bash: xmlstarlet: команда не найдена
        > Совсем уже со своим xml. Если не выстрелил grep, потом не выстрелил
        > sed, то awk -f \< '...' и не балуйся.

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

        в мануале что по sed что по awk многа букав -- разучались люди читать.

  • Поиск текста, !*! Andrey Mitrofanov, 09:18 , 17-Янв-14 (3)
    > <div>uyiuyewrwuriuo eerer rwerw rwerw<> <a href="index.html">shuba 28900 rub.</a>
    > </div>
    > cat test | sed -r 's/^.*uba ([0-9]+) rub.*$/\1/'

    Следи за руками:

    <test sed -nr 's/^.*uba ([0-9]+) rub.*$/\1/p'

    > Запускаю и вижу:
    > 28900
    > </div>
    > А нужно получить только цифру 28900

    Во-первых, _число, а не цЫфру.

    > А получается что есть цифра и хвост за ней, что не так
    > в регулярке? Почему вылезает </div> ?

    А во-вторых, ман сед же.

    • Поиск текста, !*! pavel_simple, 09:50 , 17-Янв-14 (6) +1
      > Во-первых, _число, а не цЫфру.

      он ещё садик не закончил -- а ты ему про маны.

    • Поиск текста, !*! Djeck, 13:05 , 17-Янв-14 (8) –1
      > Следи за руками:
      > <test sed -nr 's/^.*uba ([0-9]+) rub.*$/\1/p'

      волшебник! шаман! спасибо!
      можно несколько вопросиков?

      значок "<" перед test что означает?
      и в конце /p что значит?

      маны читал. про sed тоже читал. ну не доходит до меня значение ключей -n и -r
      -r, --regexp-extended
      использование в скрипте расширенных регулярных выражений.
      -e script, --expression=script
      добавление скрипта в исполняемые команды

      сталкнулся еще с такой проблемой. страница html (оригинал) в кодировке 1251. а у меня пингвин utf8.

      пробую так:
      <http.txt | iconv -f cp1251 | sed -nr 's/^.*уба ([0-9]+) руб.*$/\1/p'

      и ни как не поддается зверь!


      • Поиск текста, !*! pavlinux, 16:54 , 17-Янв-14 (9)
        > значок "<" перед test что означает?

        cat test |

        > и в конце /p что значит?

        print

      • Поиск текста, !*! михалыч, 09:00 , 18-Янв-14 (10)
        > пробую так:
        > <http.txt | iconv -f cp1251 | sed -nr 's/^.*уба ([0-9]+) руб.*$/\1/p'
        > и ни как не поддается зверь!

        За ненадобностью, нет смысла конвертировать цифры, ибо нужны только они.
        sed -nr 's/^.* ([0-9]*) .*$/\1/p' test

        • Поиск текста, !*! Djeck, 11:07 , 20-Янв-14 (12)
          >> пробую так:
          >> <http.txt | iconv -f cp1251 | sed -nr 's/^.*уба ([0-9]+) руб.*$/\1/p'
          >> и ни как не поддается зверь!
          > За ненадобностью, нет смысла конвертировать цифры, ибо нужны только они.
          > sed -nr 's/^.* ([0-9]*) .*$/\1/p' test

          цифры должны относиться к чему то например к "Шуба" а не к сапогам.
          задача была выцепить цену "Шуба". мы ищем "Шуба" и выдергиваем цену. Слова "Шуба" унас в 1251 соответвственно нужна перекодировка.

          • Поиск текста, !*! михалыч, 12:01 , 20-Янв-14 (13)
            > цифры должны относиться к чему то например к "Шуба" а не к сапогам.
            > задача была выцепить цену "Шуба". мы ищем "Шуба" и выдергиваем цену.
            > Слова "Шуба" унас в 1251 соответвственно нужна перекодировка.

            iconv -f cp1251 http.txt | sed -nr 's/^.*уба ([0-9]+) руб.*$/\1/p'

      • Поиск текста, !*! Andrey Mitrofanov, 10:52 , 18-Янв-14 (11)
        >> <test sed -nr 's/^.*uba ([0-9]+) rub.*$/\1/p'
        > значок "<" перед test что означает?

        то же, что и всегда, перенаправление в/в

        > и в конце> пробую так:
        > <http.txt | iconv -f cp1251 | sed -nr 's/^.*уба ([0-9]+) руб.*$/\1/p'
        > и ни как не поддается зверь!

        <file command -option1  -option2  -option3

        это то же самое (чуть нетрадиционно записанное, но вызвавшее ошибку выше), что и любое из

        command -option1  -option2  -option3 <file
        command -option1  -option2 <file -option3
        command <file -option1  -option2  -option3

        потому, что перенаправление в/в и опции ком.строки парсят и/или обрабатывают разными программами в разное время

        бессмысленно (хотя ошибки не даст, вроде) следующее

        command -optionA -optionB -optionC | command2 <file -option1  -option2  -option3

  • Поиск текста, !*! михалыч, 10:31 , 17-Янв-14 (7) +1
    > А нужно получить только цифру 28900
    > А получается что есть цифра и хвост за ней, что не так
    > в регулярке? Почему вылезает </div> ?

    Короче, Склифосовский!
    sed 's/[^0-9]*//g' test
    perl -pe 's/[^0-9]+//g' test




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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