Xpath
Citat
Förkortningar
XPath selection by innertext
//myparent/mychild[text() = 'foo']
//myparent/mychild[. = 'foo']
Tagg
//tag
Tagg med class
//tag[@class='value']
Tagg med class som innehåller
//tag[contains(@class, 'value')]
För att slippa matcha class="Testvalue"
or class="newTest"
//tag[contains(concat(' ', @class, ' '), ' value ')]
//tag[contains(concat(' ', normalize-space(@class), ' '), ' value ')]
Tagg med class som börjar med
//tag[starts-with(@class,"value")]
Tagg med id
//tag[@id='value']
Tagg med children tag
//tag/children
Tagg med wildcard children tag
//tag/*
Tagg med childrens children tag
//tag//children
Eventuellt även
//tag::children
Tagg med första child
//tag/child[0]
normalize-space
normalize-space(@class)
normalize-space
normalize-space(@class)
count, index-of, tokenize
//*[count(index-of(tokenize(@class, 's+' ), $classname)) = 1]
Exempel på hur man kan skriva i PHP
<?php
$url = 'http://example.com'
$dom = new DomDocument();
$markup = file_get_contents($url);
$dom->loadHTML($markup);
$xpath = new DOMXpath($dom);
$elements = $xpath->query("//div[@id='content']");
echo $elements->item(0)->childNodes;
echo $elements->item(0)->nodeValue;
echo $elements->item(0)->textContent;