Я сделал следующие вещи и запустил свой проект на Laravel 5.6-dev:
"minimum-stability":
"dev", "prefer-stable": true
в конец моего файла composer.json. Я не знаю ни одного инструмента синтаксического анализа XML в чистом виде. Так что вам, скорее всего, понадобится инструмент, написанный на другом языке.
Мой модуль XML :: Twig Perl поставляется с таким инструментом: xml_grep
, где вы, вероятно, напишете то, что хотите, как xml_grep -t '/ html / head / title' xhtmlfile.xhtml> titleOfXHTMLPage.txt
(параметр -t
дает результат в виде текста вместо xml)
Ну, вы можете использовать утилиту xpath. Я предполагаю, что Perl XML :: Xpath содержит его.
Инструменты командной строки, которые можно вызывать из сценариев оболочки, включают:
. Я также использую xmllint и xsltproc с небольшими сценариями преобразования XSL для обработки XML из командной строки или в сценариях оболочки.
Взгляните на XML2 из http://www.ofb.net/~egnor/xml2/ , который преобразует XML в строчно-ориентированный формат. .
Вы можете сделать это очень легко, используя только bash. Вам нужно только добавить эту функцию:
rdom () { local IFS=\> ; read -d \< E C ;}
Теперь вы можете использовать rdom как read, но для html-документов. При вызове rdom присваивает элемент в переменную E, а содержимое - в переменную C.
Например, чтобы сделать то, что вы хотели:
while rdom; do
if [[ $E = title ]]; then
echo $C
exit
fi
done < xhtmlfile.xhtml > titleOfXHTMLPage.txt