特殊字符不会通过XLST从XML中删除
我似乎无法从XML中删除某些特殊字符。它们是省略号、双引号和单引号。我正在转义特殊字符,列表中也有句点,但它不会删除。除了这几项之外,其他一切都会删除 以下是XLST:特殊字符不会通过XLST从XML中删除,xml,xslt,transform,special-characters,Xml,Xslt,Transform,Special Characters,我似乎无法从XML中删除某些特殊字符。它们是省略号、双引号和单引号。我正在转义特殊字符,列表中也有句点,但它不会删除。除了这几项之外,其他一切都会删除 以下是XLST: <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSche
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
exclude-result-prefixes="xs"
version="2.0">
<xsl:template match="/">
<soa:Label identifier="6f109b37-d9d1-4ff3-8e16-7ecffa08be1f" name="To Avid Transcript" description="" instance="b885c5f1-6307-42ff-a79c-42d61bc4464e" signature="00000000-0000-0000-0000-000000000000" xmlns:soa="urn:telestream.net:soa:core">
<soa:Parameter type="string" identifier="32bd5202-f003-4da3-8d1f-2b5a5d324af9" bindable="True" name="Transcript" enabled="true" disableable="false" optionseditable="false">
<xsl:variable name = "apos">'</xsl:variable>
<xsl:value-of select="translate(Transcript, '♪!@#&"<>$%^*()[]{}?/.,:;™-', '')"/>
</soa:Parameter>
</soa:Label>
</xsl:template>
</xsl:stylesheet>
'
您的输入包含“智能报价”。要删除这些,请使用:
translate(Transcript, '‘’“”', '')
我无法重现您关于该期间的问题。字符”
、“
”和“
不在您的翻译()中。如果你加上它们,它们应该会起作用。我看不出你的例子中有省略;只有三个句号。据我所知,我有逃逸的特殊字符,如双引号是“,所以我不能使用”和“。我列出了一个句号,所以我不知道为什么它不删除这三个句号。正如Michael在他的回答中指出的,您在XML中没有使用quot或apos,而是使用了智能引号。太好了,这很有效。我刚刚找到了与上面列出的省略号相同的unicode,它也删除了它。@RyanJensen很好。请注意,数字字符参考仅用于方便和清晰。您也可以使用实际字符,例如translate(Transcript),“,”,“)
。
<?xml version="1.0" encoding="utf-16"?>
<soa:Label identifier="6f109b37-d9d1-4ff3-8e16-7ecffa08be1f" name="To Avid Transcript" description="" instance="b885c5f1-6307-42ff-a79c-42d61bc4464e" signature="00000000-0000-0000-0000-000000000000" xmlns:soa="urn:telestream.net:soa:core">
145 JDY Hi I’m John Doe executive vice president Right now you are tuning in to a very special Progra “Program Name” seeing in the world today...
</soa:Parameter>
</soa:Label>
translate(Transcript, '‘’“”', '')