css - XSLT 中的正则表达式

标签 css xml xslt

我有一个将正则表达式作为参数的 XSLT 函数,但 XSLT 解析器不喜欢它。

代码如下:

<xsl:value-of select='ns:RegexReplace($variable, "", "style=\"\w+\:\s\w+;\"")' disable-output-escaping='yes' />

我发现了这个: http://www.xml.com/pub/a/2003/06/04/tr.html <-- 但它使用的是我现在的样子,而且似乎可以(为他们)工作。我只有一个垃圾解析器吗??

有什么办法吗? 或者,一种通过 CSS 技巧强制元素忽略内联样式的方法?

最佳答案

您似乎试图通过用反斜杠转义来在引号分隔的 XPath 字符串文字中包含引号。那是行不通的。

XPath 1.0 (XSLT 1),没有好的方法可以做到这一点。您可能需要求助于一些技巧,例如定义一个包含单引号字符的变量并使用 concat 函数来创建您的字符串:

<xsl:variable name='quot' select="'&quot;'"/>
<xsl:value-of select='concat("a string with a quote ", $quot, " character")'/>

XPath 2.0 (XSLT 2),您可以用另一个引号转义一个引号:

<xsl:value-of select='"a string with a quote "" character"'/>

关于css - XSLT 中的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1509286/

相关文章:

c# - 我如何使用 XPathNavigator 访问 XML Child 的索引?

xslt - 循环中的索引 XSL

c# - 检查扩展对象是否在 xslt 模板中定义

html - 使用类将 CSS 应用于文本输入

html - 没有清晰列的 CSS 图像网格

python - XPath:查找具有特定属性的所有已知标签

java - 针对泛型和特定类型或该类型列表的灵活 JAXB XML 解析

php - 显示来自数据库的不同数据

html - Bootstrap 按钮网格大小

xml - XSLT:新增属性的定位