| Newsgroups |
gmane.text.xml.xsl.general.mulberrytech |
| Organization |
Liberty Development |
| Message-ID |
<[email protected]> |
On 22.10.2020 23:14, Christophe Marchand [email protected] wrote:
> For sure, regex are strange to me, even if I think they are really usefull.
>
> So, when a regex king give me the right regex to do exactly what I want,
> I take this regex, and I adapt it to other similar use-cases.
>
> My first problem was with comments, and I've adapted it to other kind of
> markers :
>
> **bold**
> $$code$$
> @@link@@
>
> The first two are Ok, but I can not make it run for the third case.
>
> I join the XSL, a XSpec file, I have one scenario that fails. If someone
> could :
>
> 1. give me the solution
> 2. explain me why it was failing
> 3. explain me why the solution works
>
> it would be really a good thing.
>
> In France, we now have a curfew at 9pm. There a lot of beer that can not
> be sold ; i may have a barrel for the guy who help me !
>
> Best regards,
> Christophe
>
> Le 08/10/2020 à 16:54, Imsieke, Gerrit, le-tex [email protected]
> a écrit :
>>
>>
>> On 08.10.2020 16:26, Liam R. E. Quin [email protected] wrote:
>>> You want [^*]*?
>>
>> Thinking of the brilliant potential for misunderstanding that this
>> answer entails.
>>
>> Christophe: I don't understand why you are asking me whether I want
>> [^*]*.
>>
>> Jokes aside, I think you need the non-greedy question mark modifier,
>> but not on [^*]*. You use it to make .* non-greedy. Otherwise it will
>> stop at the first '*' that it encounters.
>>
>> This works:
>>
>> <xsl:template name="xsl:initial-template">
>> <doc>
>> <xsl:analyze-string
>> select="'Comments are delimited by **/* */** or prefixed by
>> **//**'"
>> regex="\*\*(.*?)\*\*">
>> <xsl:matching-substring>
>> <b>
>> <xsl:value-of select="regex-group(1)"/>
>> </b>
>> </xsl:matching-substring>
>> <xsl:non-matching-substring>
>> <xsl:value-of select="."/>
>> </xsl:non-matching-substring>
>> </xsl:analyze-string>
>> </doc>
>> </xsl:template>
>>
I think the issue is your use of text value templates
<xsl:non-matching-substring>{pt:replaceTextArobase(.)}</xsl:non-matching-substring>
that strips any elements; you need to use
<xsl:non-matching-substring>
<xsl:sequence select="pt:replaceTextArobase(.)"/>
</xsl:non-matching-substring>
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/3329386
or by email: [email protected]
--~--