如何在 XSL 中用空格替换逗号

2023-12-08

我需要在 XML 输出中将所有其他逗号替换为空格。现在,我的纬度和经度如下所示:

-0.52437106918239,0.391509433962264,-0.533805031446541,0.430817610062893,0 
-0.547955974842767,0.427672955974843,

我需要 XML 输出中的坐标如下所示:

-0.52437106918239 0.391509433962264, -0.533805031446541 0.430817610062893,0   
-0.547955974842767 0.427672955974843

我如何使用 XSLT 来做到这一点?这是我的 xsl:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"    
xmlns:kml="http://www.opengis.net/kml/2.2">
<xsl:output method="text"/>

<xsl:template match="/">
<xsl:apply-templates select="kml:kml/kml:Document/kml:Placemark/kml:Polygon  
/kml:outerBoundaryIs/kml:LinearRing"/>
</xsl:template>

  <xsl:template match="kml:LinearRing">
"POLYGON((<xsl:value-of select="kml:coordinates"/>))"
 </xsl:template>
</xsl:stylesheet>

在 XSLT 2.0 中这将是微不足道的。你可以使用代替().

在 XSLT 1.0 中,您可以像这样使用模板。调用列表中的转换空格模板,该模板需要替换每个第二个逗号。

<xsl:template name="convert-space">
  <xsl:param name="text"/>
  <xsl:choose>
    <xsl:when test="contains($text,',')">
      <xsl:value-of select="substring-before($text,',')"/>
      <xsl:value-of select="' '"/>
      <xsl:call-template name="convert-comma">
        <xsl:with-param name="text" select="substring-after($text,',')"/>
      </xsl:call-template>
    </xsl:when>
    <xsl:otherwise>
      <xsl:value-of select="$text"/>
    </xsl:otherwise>
  </xsl:choose>
</xsl:template>

<xsl:template name="convert-comma">
  <xsl:param name="text"/>
  <xsl:choose>
    <xsl:when test="contains($text,',')">
      <xsl:value-of select="substring-before($text,',')"/>
      <xsl:value-of select="','"/>
      <xsl:call-template name="convert-space">
        <xsl:with-param name="text" select="substring-after($text,',')"/>
      </xsl:call-template>
    </xsl:when>
    <xsl:otherwise>
      <xsl:value-of select="$text"/>
    </xsl:otherwise>
  </xsl:choose>
</xsl:template>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 XSL 中用空格替换逗号 的相关文章

随机推荐

  • 在 AWS iOS SDK 中,如何处理 FORCE_CHANGE_PASSWORD 用户状态

    我已经按照这里的示例进行了操作 https github com awslabs aws sdk ios samples tree master CognitoYourUserPools Sample 将交互式认知登录集成到我的 iOS 应
  • 如何识别图片中的钞票?

    我有一些欧元钞票的图片 账单完全在图像内 并且大多是平坦的 例如变形很小 并且透视倾斜很小 例如完全从钞票上方拍摄的图像 现在我不是图像识别方面的专家 我想实现以下目标 找到钞票的边界框 这样我就可以从图像其余部分的噪声中 剪掉 钞票 弄清
  • Java Graphics2D浮点精确drawOval替代品?

    因此 我尝试绘制一个圆弧并在其圆形端点周围放置一个圆 但由于舍入到最近的像素 我遇到了问题 这在某些情况下是可见的 但并非在所有情况下都是可见的 有没有办法使用浮点和抗锯齿来绘制圆来消除这种舍入误差 您可以运行此代码来查看问题 为了清晰起见
  • max深度和min深度如何与find命令一起使用?

    我想知道最大深度和最小深度如何与 find 命令一起使用 还想知道下面的命令是如何工作的 find mindepth 2 maxdepth 5 name file1 根据find 的手册页 maxdepth levels Descend a
  • 比较 Timer 与 DispatcherTimer

    有什么区别between System Windows Forms Timer and System Windows Threading DispatcherTimer 在什么情况下我们应该使用它们 有什么最佳实践吗 Windows For
  • 使用 h5py 打乱 HDF5 数据集

    我有一个很大的 HDF5 文件 30GB 我需要对每个数据集中的条目 沿着 0 轴 进行洗牌 浏览 h5py 文档我也找不到randomAccess or shuffle功能 但我希望我错过了一些东西 有谁足够熟悉 HDF5 来想出一种快速
  • 请求权限对话框暂停我的活动

    我在里面请求许可onActivityResult我的活动的情况 发生的情况是我的活动在显示请求权限对话框时被暂停 这是为什么 我能以某种方式阻止它吗 我所做的只是以正常方式请求许可 if Build VERSION SDK INT gt B
  • EF Core 3.1.14 重复冷启动

    我们已将一个非常简单的 NET CORE 3 Web API 应用程序部署到 Azure 云 该应用程序是一个 Web API 并与 Azure 中托管的一个非常简单的 SQL 服务器数据库进行通信 我们注意到两个主要的性能问题 所有 AP
  • 替换R中矩阵中的非对角元素(希望这次问得更好)[重复]

    这个问题在这里已经有答案了 好吧 我早些时候问过这个问题 但我因为没有指定任何内容并且没有显示出之前尝试的迹象而受到了 理应的 批评 所以让我再试一次 I m using R and I have a 463 463 matrix What
  • 处理来自多个选择字段的数据

    我有一个多重选择字段 设计如下
  • 编辑多个未发布的 Go 模块的本地副本

    是只有我一个人还是使用未发布的 go 模块非常痛苦 https go dev doc modules managing dependency tmp 9 https groups google com g golang nuts c 9Mf
  • 如何访问 Apexchart 的 dataPointSelection 函数上的值

    如何通过单击工具提示来访问 Apex 图表的数据值 我不想要索引 我需要这个值 我如何访问该值
  • 流口水基于时间的限制和“现在”

    我们正在尝试写一个流口水 上面写着 如果事件发生在上周 则执行后果 我们有表示事件发生时间的常规 java 日期对象 但我们不确定如何在流口水的 LHS 中表达我们希望该日期对象在上周发生 重要的是 一周的时间跨度是任意的 它可以随时更改为
  • Matlab使用bar时右侧有空白

    我使用下面的代码来保存图形 fig1 figure visible off b bar bar res x a b c d e f g h i j k l m n o p q r s t u set gca XTickLabel x XTi
  • 如何最好地实现自定义类型的 Equals?

    假设有一个 Point2 类 并且以下等于 public override bool Equals object obj public bool Equals Point2 obj 这是 Effective C 3 中所示的内容 publi
  • ASP 奇怪的未指定错误 - 80004005

    我必须在一个已经制作好的网站上工作 只需添加一些小模块 当我更新时 不同的子文件夹中有许多名为 myDB mdb 的文件 我想确保我的应用程序连接正确的数据库 所以我开始重命名子文件夹 在其中一个子文件夹中 我刷新了 主站点和我的停止工作
  • Zend Framework 2 过滤/验证内容数组

    如何将过滤器应用于包含数组内容的字段元素 例如 this gt add name gt tags type gt text filter gt array array name gt StripTags array name gt Stri
  • 如何将值从一个 JLabel 传输到另一个 JLabel?

    我有这个计算器 但我不知道如何获取其中的值resultpane单击 完成 按钮时到第一个文本框 我是 Java 新手 我已经尝试这样做 但我一直收到错误 import java awt BorderLayout import java aw
  • My SQL 错误:连接尝试失败,因为连接方未正确响应

    我在第三方服务器中有一个 MySQL 数据库 我正在尝试使用 Dreamweaver 中的 PHP 从本地计算机访问它 但是 我收到以下错误 MySQL 错误 2002 连接尝试失败 因为连接方未正确响应 一段时间后 或建立连接失败 因为连
  • 如何在 XSL 中用空格替换逗号

    我需要在 XML 输出中将所有其他逗号替换为空格 现在 我的纬度和经度如下所示 0 52437106918239 0 391509433962264 0 533805031446541 0 430817610062893 0 0 54795