几个字符之后的xsl子字符串但没有剪切字

时间:2012-04-19 08:53:56

标签: string xslt

我想调用一些子字符串文本,我将其添加到可行的

<xsl:variable name="substringbreakText">
          <xsl:call-template name="insertBreaks"> 
               <xsl:with-param name="subject" select="substring(PublicProfile/AboutMe,1,550)"/> 
              </xsl:call-template>
    </xsl:variable>

并且喜欢在这个文字上留言,直到我得到空白或休息。 所以我的观点是返回少于550个字符的字符串,但保持它看起来比较单词

exmple: 这就是我的550个字符: “你看到的形象声称描绘了英国Anglia ucla大学研究支持部门的学术发展荣誉教授Graham Bverly。他为研究生和同学们提供研究和研讨会。

但这幅肖像画给读者的信息是什么?巴德利是一个博学的思想家吗?他寻求真理之光?他向左倾斜?他可能会因为这种自负而感到好笑吗?他持怀疑态度?也许。对于'因为一个人是,所以他看到'(威廉布莱尔)。

Eme“

我想剪切空白区域和“Eme”或剪切此字符串中的\ r \ n或

2 个答案:

答案 0 :(得分:8)

<xsl:value-of select="substring(@Description, 1, 500 + string-length(substring-before(substring(@Description, 501),' ')))" />

这可以改为匹配句号或满足您的需求:)

答案 1 :(得分:0)

如果你在XSLT 1.0中,找到第550个字符之前的最后一个空格将涉及递归。写一个给出字符串的模板:

(a)测试字符串的最后一个字符(使用substring(s,string-length(s),1))

(b)如果是空格,则返回字符串

(c)否则,调用自身将substring(s,1,string-length(s)-1)作为参数传递。

传递此模板substring(in,1,500),它将返回一个字符串,该字符串以提供的输入中的最后一个空格结束。

相关问题