|
Subject: Re: [xsl] Could not use matches in Regular Expression (XSLT 2.0) From: Wolfgang Laun <wolfgang.laun@xxxxxxxxx> Date: Sat, 1 May 2010 16:18:21 +0200 |
The pattern must be a string, so enclose it in apostrophes. (Also,
there is one opening bracket missing.) To have an exact match, use '^'
and '$' to anchor at the beginning and the end. You may simplify using
a repeat count (and \d for digit). All together now:
matches( ., '^4\d{6}$' )
-W
> On Sat, May 1, 2010 at 3:56 PM, Jack Bush <netbeansfan@xxxxxxxxxxxx> wrote:
>>
>> Hi Forum members,
>>
>> I
>> am new to XSLT 2.0 and would like to do the following basic numeric string
pattern
>> matching using regular expression:
>>
>> <xsl:template match="ns:p[ns:strong='Telephones:']">
>> <xsl:choose>
>> < -- If global parameter $TELEPHONE_AREA_CODE equals to FAIRYLAND -->
>> <xsl:when test="$TELEPHONE_AREA_CODE = ''FAIRYLAND">
>> <xsl:for-each select="ns:a">
>> <-- Only accept the phone number that starts with 4 follow by six
digits.... --->
>> <xsl:if test="matches(.,4[0-9][0-9][0-9]0-9][0-9][0-9])">
>> <phone_number><xsl:value-of select='.'/></phone_number>
>> </xsl:if>
>> </xsl:for-each>/>
>> ......
>>
>> However, it is picking up phone numbers starting with 1 instead. Also tried
the starts-with() with the same outcomes.
>>
>> I am using JDK1.6.19, Netbeans 6.7, JDOM 1.1, Saxon 9.1 on Windows XP.
>>
>> Your assistance would be much appreciated.
>>
>> Thanks in advance,
>>
>> Jack
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: [xsl] Could not use matches in , Michael Kay | Thread | Re: [xsl] Could not use matches in , Jack Bush |
| RE: [xsl] Could not use matches in , Michael Kay | Date | Re: [xsl] Could not use matches in , Sam Byland |
| Month |