Avatar billede themepark Nybegynder
17. marts 2005 - 18:12 Der er 8 kommentarer

Pattern for text nodes

Er det muligt at angive et pattern for teksten imellem to elementer, altså f.eks. for Test i <J>Test</J> ? Og hvordan i så fald?

Venlig hilsen
Michael K. P.
Avatar billede soreno Praktikant
17. marts 2005 - 19:16 #1
Hvis du med pattern mener XPath udtryk så kan du f.eks. skrive noget ala:
//J/text()
Avatar billede janegil Nybegynder
17. marts 2005 - 21:32 #2
(Dagens teologi: "Test" ligger INNE i elementet, men MELLOM start-tag og slutt-tag.)

Du har spurt i XSLT-kategorien, hvis du bruker XSLT, så trenger du vanligvis ikke teste eksplisitt på tekstnoden. Default templates vil plukke ut tekstnoden for deg, hvis du koder fx
<xsl:template match="J">
  <xsl:apply-templates/>
</xsl:template>

Men om du skal bruke teksten som parameter til strengefunksjoner i XPath, så får du bruk for å være mere eksplisitt.

Default templates: http://www.w3.org/TR/xslt#built-in-rule
Avatar billede themepark Nybegynder
18. marts 2005 - 13:01 #3
Jeg er efterhånden ved at vænne mig til at når jeg siger pattern, er der INGEN, der tænker på <pattern match=""> elementet *g* Det er nemlig det jeg snakker om, og jeg har jo lavet et pattern på en attribut i mit element, men hvis jeg nu egentlig hellere vil have teksten imellem de 2 tags (godt, janegil, du får din vilje ;), kan jeg så stadigvæk lave et pattern på denne nye text node?

Og bare for at fjerne den mindste tvivl, mener jeg altså med pattern, et regulært udtryk :)
Avatar billede janegil Nybegynder
18. marts 2005 - 13:22 #4
Det vil si at du bruker regulære uttrykk i stedet for XSLT og XPATH ? At du håndterer "<J>Test</J>" som en tegnstreng, der '<' er et tegn som alle andre, ikke noe som indikerer markup?
Avatar billede themepark Nybegynder
18. marts 2005 - 13:34 #5
I stedet for XSLT? Øhm, regulære udtryk er altså en del af XSLT, du bruger et <pattern match="regulært udtryk"> til at sikre dig, at din tekst følger et bestemt format. Det jeg så tænker på, er om det også kan bruges til text nodes, og ikke bare til attributer, som jeg bruger det nu?
Avatar billede Slettet bruger
19. marts 2005 - 01:05 #6
Hmm - "pattern" i XSLT - Det må da vist være i XSLT 2.0 så (stadig "Working Draft")?

/CS
Avatar billede janegil Nybegynder
19. marts 2005 - 09:26 #7
http://www.w3.org/TR/xpath-functions/#regex-syntax var ikke lett å finne. Se også http://www.xml.com/pub/a/2003/06/04/tr.html, som starter med et attributteksempel, men det er også et eksemplel på strenger, start med å legge strengen i en variabel.

XMLspy sier seg støtte XPATH 2, så jeg kunne prøve, en dag jeg får tid.
Avatar billede themepark Nybegynder
19. marts 2005 - 13:37 #8
Hvor langt de er med de forskellige versioner, aner jeg ikke, jeg ved bare hvad vi har lært på skolen, og der har vi brugt version 2 ;) Men kigger lige på det så.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester