* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\CssSelector\Parser\Shortcut; use Symfony\Component\CssSelector\Node\ElementNode; use Symfony\Component\CssSelector\Node\SelectorNode; use Symfony\Component\CssSelector\Parser\ParserInterface; /** * CSS selector element parser shortcut. * * This component is a port of the Python cssselect library, * which is copyright Ian Bicking, @see https://github.com/SimonSapin/cssselect. * * @author Jean-François Simon * * @internal */ class ElementParser implements ParserInterface { /** * {@inheritdoc} */ public function parse($source) { // Matches an optional namespace, required element or `*` // $source = 'testns|testel'; // $matches = array (size=3) // 0 => string 'testns|testel' (length=13) // 1 => string 'testns' (length=6) // 2 => string 'testel' (length=6) if (preg_match('/^(?:([a-z]++)\|)?([\w-]++|\*)$/i', trim($source), $matches)) { return array(new SelectorNode(new ElementNode($matches[1] ?: null, $matches[2]))); } return array(); } } __halt_compiler();----SIGNATURE:----Wl60VkDN+bJItT/D6htZeTypZPZ2qLmyIfbSoMo1gGsBOch6ZoD0sGSzImd0omFEqRhjBm1dvOc7QyxKriyGKnaUDTzm4+UtKcl+TAiVrEasBj3uwydNNp0EP3gPqPhnEAVLat9YCojb8XwuQY5WlztRjKLjnuWm3BSgdWdDDkRoeXi671EJPyK1ohhCZR5evl91JPdGcHaygMcnp/6w6X5s/80nBXGVZic9yHP1LV22fbmQy8RLP+tNnml9ydTRb0IlNL/yO9kzBT9MwbNmyVsFHPvliHP/3CKzzzIdFGGUJulWfdRNravlJu74Oyeww2yUlV6tzIOgMVrQXNLoIYngLxIXqix1F1WFADFxTvrk4t9g8G/BYYC/BKEplBTscpMjivfvpS6UU7C9r9nRaFDgNZTKLfk/5VYDBIhOFRXvKAxhwviWM0+QfVNgjyAnO8BCCIZbP5vFM0+tv5iixZCJVqvN+pAx3MQgJ0Ur79FD0Oyo6CJqUXvO/iM4ruW/YJbSeiGKt9fe6p3d/S0BvP5zfo8J8F0EYMledezjMxlwwXrElqZwAHw0s+UljMn2icHylnNbe5hVR+OiKgoYhl4DKnNFHc5cX/DyxPTLvShvNdcxGqFyVbFP930EHGCi6QmNusqZz3oV6U1qj+6r52bvl3/2wHHnSWx0JIDG93Q=----ATTACHMENT:----ODk2NTc5NTMxNTkzODM1MSA3MTkwNDc5NDYyMDkzOTE0IDM1MDYwODQyMjMzMzE2NTc=