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(_at_)yahoo(_dot_)com(_dot_)au> 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
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--