Я тоже и смотрю на тип механизма подсчета ключевых слов, который был опубликован здесь Word Frequency Counter in XSLT а>:
Моя проблема в том, что мои ключевые слова могут состоять из нескольких слов, например:
<xsl:variable name="stopwords"
select="('audio codec', 'dual audio', 'audio switch' )"/>
Я играл с кодом из приведенного выше вопроса и имел что-то вроде этого:
<xsl:stylesheet
version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<xsl:variable name="stopwords"
select="('audio codec', 'dual audio', 'audio switch' )"/>
<wordcount>
<xsl:for-each-group group-by="." select="
for $w in //text()/tokenize(., '\W+')[not(.=$stopwords)] return $w">
<word word="{current-grouping-key()}" frequency="{count(current-group())}"/>
</xsl:for-each-group>
</wordcount>
</xsl:template>
Certainly tokenizing with the '\W+' breaks this into words, but then that won't match my stopwords, as they are and can be multiple words.
Может ли кто-нибудь предложить элегантный способ подсчета слов, когда ключевые слова могут иметь несколько слов?
Спасибо за любую помощь в этом!
Расс
keyphrases
в текстовом узле. Сейчас восстановлен. Я надеюсь, что это помогает. - person kjhughes   schedule 21.10.2014