Xslt 如何对数字后的字符使用正则表达式
我想选择@reId,它的数字后面有一个字符fig-FigF.3A 输入:Xslt 如何对数字后的字符使用正则表达式,xslt,Xslt,我想选择@reId,它的数字后面有一个字符fig-FigF.3A 输入: <p type="TOC_Level Two Entry"> <doclink refType="anchor" refId="fig-FigF.3A">Figure F.3A—Text<c type="TOC_Leader Dots"><t/></tps:c></tps:doclink> <ref format="TOC P
<p type="TOC_Level Two Entry">
<doclink refType="anchor" refId="fig-FigF.3A">Figure F.3A—Text<c
type="TOC_Leader Dots"><t/></tps:c></tps:doclink>
<ref format="TOC Page Number" refType="anchor" refId="fig-FigF.3A"/>
<p>
输出应为:
<p type="TOC_Level Two Entry"><doclink refType="anchor"
refId="fig-FigF.3A">F.3A<tps:t/>Text<c
type="TOC_Leader Dots"><t/></c></tps:doclink><ref
format="TOC Page Number" refType="anchor" refId="fig-FigF.3A"/></tps:p>
试用代码:
我试图用这个正则表达式^Figure\d+|[A-Z]。\d+-.*来解决这个问题。但它不起作用
我怎样才能解决这个问题?我使用的是xslt 2.0,因此,试图从中提取一个清晰的需求语句,您似乎希望输入fig-FigF.3A得到输出F.3A。或者,您可能希望将图F.3A-Text作为输入?一方面,你说你正在选择@reId属性——这在你的输入中并不存在;另一方面,您尝试的解决方案是查找出现在文本节点中的文本图形,而不是属性 所以我认为我们需要一个更清晰的需求声明 作为一个需求声明,另一个问题是您只给出了一个示例,而不是一般规则。在你的问题中有一个一般规则的提示,在数字后面有一个字符。但这意味着什么?您的示例似乎在寻找模式字母点位,这与您对问题的描述完全不匹配
对不起,主持人,这不是答案,这是对问题的评论。它开始是一个答案,直到我意识到这个问题不清楚,但到那时,它太长了,无法发表评论。因此,试图从中提取一个清晰的需求陈述,似乎您希望输入fig-FigF.3A得到输出F.3A。或者,您可能希望将图F.3A-Text作为输入?一方面,你说你正在选择@reId属性——这在你的输入中并不存在;另一方面,您尝试的解决方案是查找出现在文本节点中的文本图形,而不是属性 所以我认为我们需要一个更清晰的需求声明 作为一个需求声明,另一个问题是您只给出了一个示例,而不是一般规则。在你的问题中有一个一般规则的提示,在数字后面有一个字符。但这意味着什么?您的示例似乎在寻找模式字母点位,这与您对问题的描述完全不匹配 对不起,主持人,这不是答案,这是对问题的评论。它开始是一个答案,直到我意识到问题不清楚,但到那时,它太长了,无法发表评论。您的输入plz检查格式不正确 如果您只想更改文本,请将此代码与替换功能一起使用: 输入:
<p type="TOC_Level Two Entry">
<doclink refType="anchor" refId="fig-FigF.3A">Figure F.3A—Text<c
type="TOC_Leader Dots"><t/></tps:c></tps:doclink>
<ref format="TOC Page Number" refType="anchor" refId="fig-FigF.3A"/>
<p>
代码:
输出:
演示:您的输入plz检查列表格式不正确
如果您只想更改文本,请将此代码与替换功能一起使用:
输入:
<p type="TOC_Level Two Entry">
<doclink refType="anchor" refId="fig-FigF.3A">Figure F.3A—Text<c
type="TOC_Leader Dots"><t/></tps:c></tps:doclink>
<ref format="TOC Page Number" refType="anchor" refId="fig-FigF.3A"/>
<p>
代码:
输出:
演示:您可以尝试这个正则表达式:图[A-Z][.][0-9A-Z]+.+?[A-Za-Z]+。当我使用它时,我会得到作为F3A的输出。但是我想要的输出是F.3a如果你提供格式良好的输入和输出,你会让那些想要帮助你的人的生活变得更容易。你可以尝试这个正则表达式:Figure[A-Z][.][0-9A-Z]+.+?[A-Za-Z]+。当我使用它时,我得到的输出是F3A。但是我想要的输出是F.3A。如果你提供格式良好的输入和输出,你将使那些想要帮助你的人的生活变得更加轻松。
<?xml version="1.0" encoding="UTF-8"?>
<p type="TOC_Level Two Entry">
<tps:doclink xmlns:tps="htttp:\\tps" refType="anchor" refId="fig-FigF.3A">F.3B<tps:c type="TOC_Leader Dots"><t/></tps:c></tps:doclink>
<ref format="TOC Page Number" refType="anchor" refId="fig-FigF.3A"/>
</p>