@NikitinRoman

Как вытащить число при помощи awk/sed из html файла?

Добрый день! Есть html файл, в котором есть нижеприведенная строка, необходимо выдернуть из файлика сумму, в нашем случае 11 111, и вывести ее в в виде 11111.

<dl><dt>Текущий баланс</dt><dd><div class="span28"><span class="money bold">11 111<sup class="hide-text">.</sup><sup>32</sup>
  • Вопрос задан
  • 2751 просмотр
Пригласить эксперта
Ответы на вопрос 4
Spetros
@Spetros
IT-шник
Для html принято парсеры использовать.
Ответ написан
RicoX
@RicoX
Ушел на http://ru.stackoverflow.com/
Если длинно и не думать:
grep "Текущий баланс" | sed -e 's/^.*money bold>//g' -e 's/<sup class=hide-text>.*$//g' -e 's/\ //g'
Ответ написан
Комментировать
@vinca
Можно воспользоваться утилитой xmllint.

Ставим libxml2-utils, например для Ubuntu:
$ sudo apt-get install libxml2-utils
Далее, для вашего варианта:
$ echo "<dl><dt>Текущий баланс</dt><dd><div class="span28"><span class="money bold">11 111<sup class="hide-text">.</sup><sup>32</sup>" | xmllint --html --xpath '//span/text()' - | sed 's/ //'

Или из файла:
$ xmllint --html --xpath '//span/text()' 2.xml| sed 's/ //'
Ответ написан
Комментировать
@NikitinRoman Автор вопроса
Рабочий пример покажете?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы