Xpath per la selezione dell'id HTML incluso il numero casuale

html html-agility-pack xpath

Domanda

Ciao come selezionerei tutto il collegamento quando hanno il seguente id.

<a id="List_ctl01_link3" class="content" href=link1.aspx">
<a id="List_ctl02_link3" class="content" href=link2.aspx">
<a id="List_ctl03_link3" class="content" href=link3.aspx">
<a id="List_ctl04_link3" class="content" href=link4.aspx">

E così via...

Si noti che l'ultima parte "link3" è importante e deve essere inclusa in Xpath.

Sto usando il pacchetto di agilità C # e Html.

Risposta accettata

Nel caso in cui si usi xpath 2.0, è possibile provare le funzioni match / match e utilizzare le espressioni regolari. Se sei con xpath 1.0 probabilmente dovrai scrivere il tuo parser di attributi personalizzati (dai un'occhiata a xsl: function). AFAIR la funzione di corrispondenza è disponibile solo xpath 2.0.

Probabilmente @id [inizia con (., 'List_ct') e termina con (., 'Link3')] è un altro modo per farlo.


Risposta popolare

Ciao come selezionerei tutto il collegamento quando hanno il seguente id

Usa questa espressione XPath:

//a[@id[starts-with(.,'List_ctl')][substring(.,string-length()-5)='_link3']]

Nota : non esiste fn:ends-with() in XPath 1.0. Utilizzare invece l'ultimo predicato.




Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché