我尝试在XSLT中使用单引号对数据进行子串:
String : DataFromXML:'12345'
Run Code Online (Sandbox Code Playgroud)
预期结果: 12345
<xsl:value-of select="substring-after('$datafromxml','DataFromXML:')"/>
Run Code Online (Sandbox Code Playgroud)
结果: '12345'
我尝试下面的代码
<xsl:value-of select="substring-after('$datafromxml','DataFromXML:'')"/>
<xsl:value-of select="substring-after('$datafromxml','DataFromXML:'')"/>
<xsl:value-of select="substring-after('$datafromxml','DataFromXML:'')"/>
Run Code Online (Sandbox Code Playgroud)
错误:
String literal was not closed 'DataFromXML:'--->'<---
Run Code Online (Sandbox Code Playgroud)
Mic*_*Kay 24
逃避的一般规则是:
1.0:
"或'在2.0中:
"或'使用Vitaliy所示的变量$ quot或$ apos可以使代码更清晰.
Vit*_*liy 11
这应该工作:
<xsl:variable name="apos">'</xsl:variable>
...
<xsl:value-of select="substring-before(substring-after($datafromxml, concat('DataFromXML:', $apos)), $apos)" />
Run Code Online (Sandbox Code Playgroud)
您可以尝试在xsl:value-of中交换和"和"
<xsl:value-of select='substring-before
(substring-after($datafromxml,"DataFromXML:'"), "'")'/>
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用translate函数来删除讨厌的撇号
<xsl:value-of select='translate
(substring-after($datafromxml,"DataFromXML:"), "'", "")'/>
Run Code Online (Sandbox Code Playgroud)
不一定更好,但它确实消除了变量的需要.
| 归档时间: |
|
| 查看次数: |
48164 次 |
| 最近记录: |