XSL 用插入符替换空格

2024-01-20

更新的代码:

    <?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:output method="xml" indent="no"/>
  <!-- overwritten by application with actual values -->
  <xsl:param name="calling" select="'SAMPLE_MOD'"/>
  <xsl:param name="called" select="'SERVER1'"/>
  <xsl:param name="date" select="'20051206'"/>
  <xsl:param name="time" select="'115600.000'"/>
  <xsl:param name="PatName" select="attr[@tag='00100010']"/>
  <xsl:template match="/dataset">
     <dataset>
     <xsl:variable name="PerfProcStepDesc" select="attr[@tag='00400254']"/>
     <xsl:variable name="StudyDesc" select="attr[@tag='00081030']"/>
       <xsl:if test="string-length($StudyDesc)=0">
         <xsl:if test="$PerfProcStepDesc">
            <!-- (0008,1030) Study Description -->
           <attr tag="00081030" vr="LO">
             <xsl:value-of select="$PerfProcStepDesc"/>
           </attr>
         </xsl:if>
       </xsl:if>
     </dataset>
     <dataset>
        <xsl:variable name="caret" select="'^'"/>
        <xsl:if test="contains($PatName, ' ')">
            <xsl:value-of select="translate($PatName, ' ','^')"/>
        </xsl:if>   
     </dataset>
  </xsl:template>
</xsl:stylesheet>

变量“PatName”可能会遇到“DOE JOHN”,我需要将其转换为“DOE ^ JOHN”名称中也可能有多个空格,所以我希望所有“空格”更改为插入符并保留其名称中的当前位置。

我需要对名称中的逗号执行相同的操作。

目前,输出与输入一样,因此我的测试无法正常工作。

感谢您的关注!

EDIT #2:

我已经更改了我的代码以应用身份转换(希望我的代码是正确的!)此外,我还有处理我的 XSL 样式表时的 XSL 输入和 XSL 输出。

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:output method="xml" indent="no"/>
  <!-- overwritten by application with actual values -->
  <xsl:param name="calling" select="'SAMPLE_MOD'"/>
  <xsl:param name="called" select="'SERVER1'"/>
  <xsl:param name="date" select="'20051206'"/>
  <xsl:param name="time" select="'115600.000'"/>
  <xsl:param name="PatName" select="attr[@tag='00100010']"/>
<!-- IdentityTransform -->
<xsl:template match="/ | @* | node()">
    <xsl:copy>
        <xsl:apply-templates select="@* | node()" />
    </xsl:copy>
</xsl:template>
  <xsl:template match="/dataset">
     <dataset>
     <xsl:variable name="PerfProcStepDesc" select="attr[@tag='00400254']"/>
     <xsl:variable name="StudyDesc" select="attr[@tag='00081030']"/>
       <xsl:if test="string-length($StudyDesc)=0">
         <xsl:if test="$PerfProcStepDesc">
            <!-- (0008,1030) Study Description -->
           <attr tag="00081030" vr="LO">
             <xsl:value-of select="$PerfProcStepDesc"/>
           </attr>
         </xsl:if>
       </xsl:if>
     </dataset>
     <dataset>
        <xsl:variable name="caret" select="'^'"/>
        <xsl:if test="contains($PatName, ' ')">
            <xsl:value-of select="translate($PatName, ' ','^')"/>
        </xsl:if>   
     </dataset>
  </xsl:template>
</xsl:stylesheet>

XSL 输入here http://www.pastebin.ca/2655849

XSL 输出如下:

<?xml version="1.0" encoding="UTF-8"?>
<dataset/>

在 XSL 输入中,“患者姓名”中有“SMPTE PATTERN”,我期待“SMPTE^PATTERN”。

我希望这能有所帮助,并且希望我的身份转换器是正确的。

谢谢大家的时间


您可以使用翻译功能。

<xsl:value-of select="translate($PatName, ' ', '^')"/>

如果您想用插入符替换逗号和空格,请使用以下命令:

<xsl:value-of select="translate($PatName, ' ,', '^^')"/>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

XSL 用插入符替换空格 的相关文章

随机推荐

  • array_multisort() 不修改第一个参数中的数组

    我正在尝试排序 ar1按降序排列的值 ar2 什么也没发生 ar1 array arperc ar2 array arid array multisort ar1 ar2 print r ar1 我缺少什么 如果您想使用以下元素 ar2作为
  • 在 R 中同时记录 stdout + stderr 和 stderr

    我想拥有一切stdout stderr在一个日志文件中 同时stderr在另一个 我怎样才能在 R 中实现这一目标 消息必须保留两个日志中所有消息的时间顺序 例如我有以下代码 options warn 1 cat 1st stdout n
  • React Native 中的快速刷新始终完全重新加载应用程序

    这个问题已经在这里被问过好几次了 这是最相关的 https stackoverflow com questions 59424152 fast refresh that was introduced in react native 0 61
  • 通过 CURL 将 Zip 文件下载到文件结构中的实际 Zip 文件

    我正在尝试使用 RubyGem Curb 构建一个文件下载器 看着这个问题 https stackoverflow com questions 5382149 using gem curb curl to download file 我正在
  • Feign 和 HAL/资源

    我有一个通过 spring data rest 公开资源的服务器 据我所知 它使用 HAL 或 HATEOAS 但是当我尝试将它与 Feign 结合使用时 我似乎无法注册一个被拾取的 Jackson2HalModule 我需要做些什么才能将
  • 如何从 Google 地图平台获取天气数据?

    我有一个位置列表 我想知道是否可以从 Google 地图 API 获取天气数据 当我不得不在 Go 中这样做时 我做了这样的事情 package main import bufio context database sql encoding
  • C++11 中默认函数有什么意义?

    C 11 添加了告诉编译器的功能创建默认实现 http en wikipedia org wiki C 2B 2B0x Defaulting 2Fdeleting of standard functions on C 2B 2B objec
  • 如何在 Rails 中向数据库添加多列

    您好 我刚刚在 RoR 中创建了一个数据库 我现在想再添加 10 列 但是 我不想使用一次仅添加 1 列的以下类型的命令 rails generate migration AddClosing Hrs1ToBusinesses closin
  • ASP.NET奇怪的编译错误

    我不知道我的机器出了什么问题 但有一段时间我从 ASP NET 对于我的所有应用程序 收到以下奇怪的错误 Compilation Error Description An error occurred during the compilat
  • 通过匹配两列的值来过滤数据框

    我在 r 中有一个数据框 我想删除两列中字符串值相等的那些行 我在 r 中使用了 match 函数 但无法获得所需的输出 例如我的数据框是 ALDH1A1 ALDH1A1 ITGA7 CHRNA1 PPP1R9A ACTG1 SRGN SR
  • 无法安装漂亮

    我无法 pip install Prettytable 安装它的最佳选择是什么 sudo pip vvv install prettytable Downloading unpacking prettytable Getting page
  • 通过 Intent 发送 Arraylist

    我怎样才能收到定制ArrayList从另一个活动通过Intent 例如 我有这个ArrayList在活动A中 ArrayList
  • 捕获生成器内的错误并随后继续

    我有一个应该运行几天的迭代器 我希望捕获并报告错误 然后我希望迭代器继续 或者整个过程可以重新开始 这是函数 def get units self scraper units scraper get units i 0 while True
  • 正则表达式接受命令并分割命令、参数和参数值

    下午好 我认为我在这项特殊任务中有点超出了我的能力范围 我正在尝试创建一个正则表达式匹配函数来输入命令 并拆分命令名称 参数和参数值 新变量 Name Something Force 结果应该是 新变量 Name 某物 Force 到目前为
  • 从字符串中删除隐藏字符

    我的问题 我有一个通过电子邮件发送新闻通讯的 NET 应用程序 在 Outlook 中查看新闻通讯时 Outlook 会显示一个问号来代替它无法识别的隐藏字符 这些隐藏字符来自最终用户 他们将组成时事通讯的 html 复制并粘贴到表单中并提
  • 表单识别器无效模型状态[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我们通过以下步骤尝试了表单识别器自定义训练 API 2 0 https pnagarjuna wordpress com 2020
  • android:将Tab的单击颜色设置为TableRow的背景颜色

    我有一个选项卡布局 我有一个带有动态添加行的表格布局 当选择 单击 TableRow 时 我想将其背景颜色设置为选项卡的按下或单击颜色 我不想设置任何静态颜色 但想使用默认主题颜色 如何获取 Tablayout 的颜色信息 How to h
  • Delphi中如何检查两个事件是否指向同一个过程?

    假设我有一个链接到 Button1Click 过程的 Button1 OnClick 事件 我还有 Button2 OnClick 链接到其他一些程序 如何检查这两个事件是否从运行时链接到不同或相同的过程 我尝试测试是否 Button1 O
  • 与串口“Verifone VX520”通信

    我正在通过串口将数据发送到 Verifone VX520 支付设备 这是我第一次尝试与此类设备进行通信 SerialObj Open 字符串输入 02hPUR 10 99 000000000004 634 4761739001010010F
  • XSL 用插入符替换空格

    更新的代码