问题标签 [cdata]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
221 浏览

xml - 开始使用 CDATA 是一项重大改变吗?

为了与客户的应用程序交互,我们使用 XML 文档。也就是说,我们通过 HTTP 发送 XML 并以相同的方式接收响应 XML 文档。客户指定了两个 XML 模式来描述请求和回复的格式。一切正常,直到有一天客户开始在响应 XML 中使用 CDATA 部分。我们设置解析器时没有注意 CDATA 部分,因此我们未能解释它们。

我的问题是:谁在这里犯了错误?我试图在 XML 标准中找到答案,但我仍然不确定。我想我不能规定在 XSD 中使用或不使用 CDATA,对吗?如果是这样,就 XSD 达成一致还不够,而是必须就 CDATA 部分达成单独的协议吗?还是必须准备好解析 CDATA 和常规文本?

我对你的个人观点和任何官方声明也很感兴趣。谢谢!

0 投票
5 回答
39883 浏览

xml - 如何使用 xsl 从 xml 节点获取 CDATA?

我正在尝试CDATA使用 XSL 获取 XML 节点的内容。该节点当前如下所示:

我需要This is sample text那块。有人对此有任何想法吗?

提前致谢。

0 投票
1 回答
1088 浏览

php - PHP:如何摆脱字符串中的所有出现?

我试过这个作为测试:

但它返回了这个:

0 投票
5 回答
148006 浏览

php - PHP:如何处理

我注意到,在SimpleXMLElement包含这些 CDATA 标记的文档上使用时,内容始终为NULL. 我该如何解决?

另外,很抱歉在这里发送有关 XML 的垃圾邮件。我一直试图让一个基于 XML 的脚本工作几个小时......

如果您搜索“SimpleXMLElement cdata”,我在 Google 上尝试了第一次点击,但没有成功。


您可能没有正确访问它。您可以直接输出它或将其转换为字符串。(在此示例中,强制转换是多余的,因为 echo 无论如何都会自动执行)


你可能会有更好的运气LIBXML_NOCDATA

0 投票
2 回答
3011 浏览

c# - 在 C# 中写入 XML 时,阻止 CDATA 标记被输出转义

我们正在创建一个将一些数据输出到 XML 模式的系统。此架构中的某些字段需要保留其格式,因为最终系统会将其解析为可能的 Word 文档布局。为此,我们在<![CDATA[Some formatted text]]>App.Config 文件中使用标签,然后将其放入从我们的模式生成的 xsd.exe 类中的适当属性字段中。理想情况下,格式化不会有问题,但不幸的是,这就是系统的运行方式。

App.Config 部分如下所示:

数据分配如下所示:

最后对Xml输出进行如下处理:

理论上,这应该在最终的 XML 中产生一个包含 CDATA 标记信息的部分。但是,尖括号正在转换为&lt;&gt;

我已经查看了禁用 Outout Escaping 的方法,但到目前为止只能找到对 XSLT 表的引用。我也尝试过@"<[CDATA["使用琴弦,但还是没有运气。

任何帮助,将不胜感激!

0 投票
1 回答
6053 浏览

javascript - 如何让 XSL 中的 javascript for 循环中的小于工作?

我正在使用 CDATA 来转义脚本,但在 IE8 的调试器中,我仍然在 for 循环条件中收到此消息:“Expected ')'”。我假设它仍然认为 ; 在&lt;由 CDATA 生成的情况下是结束循环的条件。

我的 XSL 模板中的原始脚本:

转换后生成的代码(来自 IE8 调试器)

IE8 调试器报告的错误:预期为 ')' login.xml,第 29 行字符 30 (紧随第一个“form.length”之后)

0 投票
1 回答
153 浏览

php - 当有俄语输入时,XML cdata tgas 被删除

我有一个非常奇怪的问题,如果有人能帮助我,我将非常感激。

我有一个具有 textarea 的表单,其内容稍后会传输到具有这样一行的页面(使用 DOM 和 php 更改 XML 文件上的数据):

$dom->getElementsByTagName("page")->item($itemNum)->getElementsByTagName("lang")->item(1)->getElementsByTagName("text")->item(0)->firstChild->数据=$_POST['rus0'];

有问题的 XML 文件如下所示:

< text>< ![CDATA[ 表单中的文本]]></text>

当我将其上传到服务器并尝试输入俄语文本时,会发生奇怪的事情,在这种情况下,它会完全删除 CDATA 并导致

< 正文 />

而且,奇怪的是,这件事在我自己的服务器模拟器上运行良好(我使用 MAMP 和 php 5,远程服务器也有 php 5) - 在我的机器上输入俄语工作正常。

有什么想法吗?

0 投票
1 回答
968 浏览

php - CDATA xml解析大于问题

我正在使用 php 创建一个 xml 并在 iphone 应用程序代码中解析该 xml。在描述字段中有一些 html 标签和文本。

我正在使用以下行将此 html 标记转换为使用 CDATA 的 xml 标记。

现在,我的 $feed['fulltext'] 值是这样的

在 xml 中,我得到以下响应,

你可以在这里看到,在 $feed['fulltext'] 的值开始之前,我得到了一个额外的大于符号。(像这样:>...文本...)

对此有任何解决方案或建议吗?

提前致谢。干杯。

0 投票
2 回答
1525 浏览

xml - 正则表达式去除标签,保留 CDATA

可能重复:
正则表达式匹配打开的标签,XHTML 自包含标签除外

大家好,

我知道每个人都喜欢正则表达式问题,所以这是我的。我有一个 XML 树,其中一些节点包含 CDATA。如何只返回一个包含数据的字符串?

让我们看一个例子

会回来

我读过关于不使用常规语言解析不规则语言的信息,但我确信这是可行的。小伙伴们怎么看?

谢谢,凯文

编辑: 这是一个需要快速而肮脏的解决方案来处理几行 XML 的问题。我对最初的直接拒绝感到惊讶,但通过进一步阅读(特别是从稍后提供的链接)我看到有经验的程序员知道这是应该尽可能避免的事情。活到老,学到老。谢谢。

0 投票
2 回答
3227 浏览

php - PHP XML 编辑 CDATA 节点

我有一个带有一些 CDATA 节点的 XML 文件。我想更改 CDATA 节点内的文本(将其保留为 CDATA 节点)。所以,我想我首先需要读取 CDATA 节点,然后将其写回。但是,我不确定如何在 PHP 中做到这一点。我能够创建一个新的 CDATA 节点,但如何编辑 CDATA 节点?有没有直接的方法可以做到这一点?

谢谢。