<?xml version="1.0" encoding="ascii"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>pyxb.utils.xmlre</title> <link rel="stylesheet" href="epydoc.css" type="text/css" /> <script type="text/javascript" src="epydoc.js"></script> </head> <body bgcolor="white" text="black" link="blue" vlink="#204080" alink="#204080"> <!-- ==================== NAVIGATION BAR ==================== --> <table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0"> <tr valign="middle"> <!-- Home link --> <th> <a href="pyxb-module.html">Home</a> </th> <!-- Tree link --> <th> <a href="module-tree.html">Trees</a> </th> <!-- Index link --> <th> <a href="identifier-index.html">Indices</a> </th> <!-- Help link --> <th> <a href="help.html">Help</a> </th> <!-- Project homepage --> <th class="navbar" align="right" width="100%"> <table border="0" cellpadding="0" cellspacing="0"> <tr><th class="navbar" align="center" >PyXB hosted on <a href="http://sourceforge.net/projects/pyxb"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=263147&type=9" width="80" height="15" alt="Get PyXB: Python XML Schema Bindings at SourceForge.net. Fast, secure and Free Open Source software downloads"/></a></th> </tr></table></th> </tr> </table> <table width="100%" cellpadding="0" cellspacing="0"> <tr valign="top"> <td width="100%"> <span class="breadcrumbs"> <a href="pyxb-module.html">Package pyxb</a> :: <a href="pyxb.utils-module.html">Package utils</a> :: Module xmlre </span> </td> <td> <table cellpadding="0" cellspacing="0"> <!-- hide/show private --> <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink" onclick="toggle_private();">hide private</a>]</span></td></tr> <tr><td align="right"><span class="options" >[<a href="frames.html" target="_top">frames</a >] | <a href="pyxb.utils.xmlre-module.html" target="_top">no frames</a>]</span></td></tr> </table> </td> </tr> </table> <!-- ==================== MODULE DESCRIPTION ==================== --> <h1 class="epydoc">Module xmlre</h1><p class="nomargin-top"><span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html">source code</a></span></p> <p>Support for regular expressions conformant to the XML Schema specification.</p> <p>For the most part, XML regular expressions are similar to the POSIX ones, and can be handled by the Python <code>re</code> module. The exceptions are for multi-character (<code>\w</code>) and category escapes (e.g., <code>\N</code> or <code>\p{IPAExtensions}</code>) and the character set subtraction capability. This module supports those by scanning the regular expression, replacing the category escapes with equivalent charset expressions. It further detects the subtraction syntax and modifies the charset expression to remove the unwanted code points.</p> <p>The basic technique is to step through the characters of the regular expression, entering a recursive-descent parser when one of the translated constructs is encountered.</p> <p>There is a nice set of XML regular expressions at <a href="http://www.xmlschemareference.com/examples/Ch14/regexpDemo.xsd" target="_top">http://www.xmlschemareference.com/examples/Ch14/regexpDemo.xsd</a>, with a sample document at <a href="http://www.xmlschemareference.com/examples/Ch14/regexpDemo.xml" target="_top"> http://www.xmlschemareference.com/examples/Ch14/regexpDemo.xml</a></p> <!-- ==================== CLASSES ==================== --> <a name="section-Classes"></a> <table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr bgcolor="#70b0f0" class="table-header"> <td colspan="2" class="table-header"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr valign="top"> <td align="left"><span class="table-header">Classes</span></td> <td align="right" valign="top" ><span class="options">[<a href="#section-Classes" class="privatelink" onclick="toggle_private();" >hide private</a>]</span></td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <a href="pyxb.utils.xmlre.RegularExpressionError-class.html" class="summary-name">RegularExpressionError</a><br /> Raised when a regular expression cannot be processed.. </td> </tr> </table> <!-- ==================== FUNCTIONS ==================== --> <a name="section-Functions"></a> <table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr bgcolor="#70b0f0" class="table-header"> <td colspan="2" class="table-header"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr valign="top"> <td align="left"><span class="table-header">Functions</span></td> <td align="right" valign="top" ><span class="options">[<a href="#section-Functions" class="privatelink" onclick="toggle_private();" >hide private</a>]</span></td> </tr> </table> </td> </tr> <tr class="private"> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pyxb.utils.xmlre-module.html#_MatchCharPropBraced" class="summary-sig-name" onclick="show_private();">_MatchCharPropBraced</a>(<span class="summary-sig-arg">text</span>, <span class="summary-sig-arg">position</span>)</span><br /> Match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-catEsc" target="_top">character property</a> or <a href="http://www.w3.org/TR/xmlschema-2/#nt-MultiCharEsc" target="_top">multi-character escape</a> identifier, which will be enclosed in braces.</td> <td align="right" valign="top"> <span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_MatchCharPropBraced">source code</a></span> </td> </tr> </table> </td> </tr> <tr class="private"> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pyxb.utils.xmlre-module.html#_MaybeMatchCharClassEsc" class="summary-sig-name" onclick="show_private();">_MaybeMatchCharClassEsc</a>(<span class="summary-sig-arg">text</span>, <span class="summary-sig-arg">position</span>, <span class="summary-sig-arg">include_sce</span>=<span class="summary-sig-default">True</span>)</span><br /> Attempt to match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-charClassEsc" target="_top">character class escape</a> expression.</td> <td align="right" valign="top"> <span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_MaybeMatchCharClassEsc">source code</a></span> </td> </tr> </table> </td> </tr> <tr class="private"> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pyxb.utils.xmlre-module.html#_CharOrSCE" class="summary-sig-name" onclick="show_private();">_CharOrSCE</a>(<span class="summary-sig-arg">text</span>, <span class="summary-sig-arg">position</span>)</span><br /> Return the single character represented at the given position.</td> <td align="right" valign="top"> <span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_CharOrSCE">source code</a></span> </td> </tr> </table> </td> </tr> <tr class="private"> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pyxb.utils.xmlre-module.html#_MatchPosCharGroup" class="summary-sig-name" onclick="show_private();">_MatchPosCharGroup</a>(<span class="summary-sig-arg">text</span>, <span class="summary-sig-arg">position</span>)</span><br /> Match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-posCharGroup" target="_top">positive character group</a> that begins at the given position.</td> <td align="right" valign="top"> <span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_MatchPosCharGroup">source code</a></span> </td> </tr> </table> </td> </tr> <tr class="private"> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pyxb.utils.xmlre-module.html#_MatchCharGroup" class="summary-sig-name" onclick="show_private();">_MatchCharGroup</a>(<span class="summary-sig-arg">text</span>, <span class="summary-sig-arg">position</span>)</span><br /> Match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-charGroup" target="_top">character group</a> at the given position.</td> <td align="right" valign="top"> <span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_MatchCharGroup">source code</a></span> </td> </tr> </table> </td> </tr> <tr class="private"> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pyxb.utils.xmlre-module.html#_MatchCharClassExpr" class="summary-sig-name" onclick="show_private();">_MatchCharClassExpr</a>(<span class="summary-sig-arg">text</span>, <span class="summary-sig-arg">position</span>)</span><br /> Match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-charClassExpr" target="_top">character class expression</a> at the given position.</td> <td align="right" valign="top"> <span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_MatchCharClassExpr">source code</a></span> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pyxb.utils.xmlre-module.html#MaybeMatchCharacterClass" class="summary-sig-name">MaybeMatchCharacterClass</a>(<span class="summary-sig-arg">text</span>, <span class="summary-sig-arg">position</span>)</span><br /> Attempt to match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-charClassExpr" target="_top">character class expression</a>.</td> <td align="right" valign="top"> <span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#MaybeMatchCharacterClass">source code</a></span> </td> </tr> </table> </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td><span class="summary-sig"><a href="pyxb.utils.xmlre-module.html#XMLToPython" class="summary-sig-name">XMLToPython</a>(<span class="summary-sig-arg">pattern</span>)</span><br /> Convert the given pattern to the format required for Python regular expressions.</td> <td align="right" valign="top"> <span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#XMLToPython">source code</a></span> </td> </tr> </table> </td> </tr> </table> <!-- ==================== VARIABLES ==================== --> <a name="section-Variables"></a> <table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr bgcolor="#70b0f0" class="table-header"> <td colspan="2" class="table-header"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr valign="top"> <td align="left"><span class="table-header">Variables</span></td> <td align="right" valign="top" ><span class="options">[<a href="#section-Variables" class="privatelink" onclick="toggle_private();" >hide private</a>]</span></td> </tr> </table> </td> </tr> <tr class="private"> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <a name="_NotXMLChar_set"></a><span class="summary-name">_NotXMLChar_set</span> = <code title="frozenset(['-', '[', ']'])"><code class="variable-group">frozenset([</code><code class="variable-quote">'</code><code class="variable-string">-</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">[</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">]</code><code class="variable-quote">'</code><code class="variable-group">])</code></code><br /> The set of characters that cannot appear within a character class expression unescaped. </td> </tr> <tr> <td width="15%" align="right" valign="top" class="summary"> <span class="summary-type"> </span> </td><td class="summary"> <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'pyxb.utils'"><code class="variable-quote">'</code><code class="variable-string">pyxb.utils</code><code class="variable-quote">'</code></code> </td> </tr> </table> <!-- ==================== FUNCTION DETAILS ==================== --> <a name="section-FunctionDetails"></a> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr bgcolor="#70b0f0" class="table-header"> <td colspan="2" class="table-header"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr valign="top"> <td align="left"><span class="table-header">Function Details</span></td> <td align="right" valign="top" ><span class="options">[<a href="#section-FunctionDetails" class="privatelink" onclick="toggle_private();" >hide private</a>]</span></td> </tr> </table> </td> </tr> </table> <a name="_MatchCharPropBraced"></a> <div class="private"> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">_MatchCharPropBraced</span>(<span class="sig-arg">text</span>, <span class="sig-arg">position</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_MatchCharPropBraced">source code</a></span> </td> </tr></table> <p>Match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-catEsc" target="_top">character property</a> or <a href="http://www.w3.org/TR/xmlschema-2/#nt-MultiCharEsc" target="_top">multi-character escape</a> identifier, which will be enclosed in braces.</p> <dl class="fields"> <dt>Parameters:</dt> <dd><ul class="nomargin-top"> <li><strong class="pname"><code>text</code></strong> - The complete text of the regular expression being translated</li> <li><strong class="pname"><code>position</code></strong> - The offset of the opening brace of the character property</li> </ul></dd> <dt>Returns:</dt> <dd>A pair <code>(cps, p)</code> where <code>cps</code> is a <a href="pyxb.utils.unicode.CodePointSet-class.html" class="link">unicode.CodePointSet</a> containing the code points associated with the property, and <code>p</code> is the text offset immediately following the closing brace.</dd> <dt>Raises:</dt> <dd><ul class="nomargin-top"> <li><code><strong class='fraise'><a href="pyxb.utils.xmlre.RegularExpressionError-class.html">RegularExpressionError</a></strong></code> - if opening or closing braces are missing, or if the text between them cannot be recognized as a property or block identifier.</li> </ul></dd> </dl> </td></tr></table> </div> <a name="_MaybeMatchCharClassEsc"></a> <div class="private"> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">_MaybeMatchCharClassEsc</span>(<span class="sig-arg">text</span>, <span class="sig-arg">position</span>, <span class="sig-arg">include_sce</span>=<span class="sig-default">True</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_MaybeMatchCharClassEsc">source code</a></span> </td> </tr></table> <p>Attempt to match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-charClassEsc" target="_top">character class escape</a> expression.</p> <dl class="fields"> <dt>Parameters:</dt> <dd><ul class="nomargin-top"> <li><strong class="pname"><code>text</code></strong> - The complete text of the regular expression being translated</li> <li><strong class="pname"><code>position</code></strong> - The offset of the backslash that would begin the potential character class escape</li> <li><strong class="pname"><code>include_sce</code></strong> - Optional directive to include single-character escapes in addition to character cllass escapes. Default is <code>True</code>.</li> </ul></dd> <dt>Returns:</dt> <dd><code>None</code> if <code>position</code> does not begin a character class escape; otherwise a pair <code>(cps, p)</code> as in _MatchCharPropBraced.</dd> </dl> </td></tr></table> </div> <a name="_CharOrSCE"></a> <div class="private"> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">_CharOrSCE</span>(<span class="sig-arg">text</span>, <span class="sig-arg">position</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_CharOrSCE">source code</a></span> </td> </tr></table> <p>Return the single character represented at the given position.</p> <dl class="fields"> <dt>Parameters:</dt> <dd><ul class="nomargin-top"> <li><strong class="pname"><code>text</code></strong> - The complete text of the regular expression being translated</li> <li><strong class="pname"><code>position</code></strong> - The offset of the character to return. If this is a backslash, additional text is consumed in order to identify the <a href="http://www.w3.org/TR/xmlschema-2/#nt-SingleCharEsc" target="_top">single-character escape</a> that begins at the position.</li> </ul></dd> <dt>Returns:</dt> <dd>A pair <code>(c, p)</code> where <code>c</code> is the Unicode character specified at the position, and <code>p</code> is the text offset immediately following the closing brace.</dd> <dt>Raises:</dt> <dd><ul class="nomargin-top"> <li><code><strong class='fraise'><a href="pyxb.utils.xmlre.RegularExpressionError-class.html">RegularExpressionError</a></strong></code> - if the position has no character, or has a character in <a href="pyxb.utils.xmlre-module.html#_NotXMLChar_set" class="link" onclick="show_private();">_NotXMLChar_set</a> or the position begins an escape sequence that is not resolvable as a single-character escape.</li> </ul></dd> </dl> </td></tr></table> </div> <a name="_MatchPosCharGroup"></a> <div class="private"> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">_MatchPosCharGroup</span>(<span class="sig-arg">text</span>, <span class="sig-arg">position</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_MatchPosCharGroup">source code</a></span> </td> </tr></table> <p>Match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-posCharGroup" target="_top">positive character group</a> that begins at the given position.</p> <dl class="fields"> <dt>Parameters:</dt> <dd><ul class="nomargin-top"> <li><strong class="pname"><code>text</code></strong> - The complete text of the regular expression being translated</li> <li><strong class="pname"><code>position</code></strong> - The offset of the start of the positive character group.</li> </ul></dd> <dt>Returns:</dt> <dd>a pair <code>(cps, p)</code> as in _MatchCharPropBraced.</dd> <dt>Raises:</dt> <dd><ul class="nomargin-top"> <li><code><strong class='fraise'><a href="pyxb.utils.xmlre.RegularExpressionError-class.html">RegularExpressionError</a></strong></code> - if the expression is syntactically invalid.</li> </ul></dd> </dl> </td></tr></table> </div> <a name="_MatchCharGroup"></a> <div class="private"> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">_MatchCharGroup</span>(<span class="sig-arg">text</span>, <span class="sig-arg">position</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_MatchCharGroup">source code</a></span> </td> </tr></table> <p>Match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-charGroup" target="_top">character group</a> at the given position.</p> <dl class="fields"> <dt>Parameters:</dt> <dd><ul class="nomargin-top"> <li><strong class="pname"><code>text</code></strong> - The complete text of the regular expression being translated</li> <li><strong class="pname"><code>position</code></strong> - The offset of the start of the character group.</li> </ul></dd> <dt>Returns:</dt> <dd>a pair <code>(cps, p)</code> as in _MatchCharPropBraced.</dd> <dt>Raises:</dt> <dd><ul class="nomargin-top"> <li><code><strong class='fraise'><a href="pyxb.utils.xmlre.RegularExpressionError-class.html">RegularExpressionError</a></strong></code> - if the expression is syntactically invalid.</li> </ul></dd> </dl> </td></tr></table> </div> <a name="_MatchCharClassExpr"></a> <div class="private"> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">_MatchCharClassExpr</span>(<span class="sig-arg">text</span>, <span class="sig-arg">position</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#_MatchCharClassExpr">source code</a></span> </td> </tr></table> <p>Match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-charClassExpr" target="_top">character class expression</a> at the given position.</p> <dl class="fields"> <dt>Parameters:</dt> <dd><ul class="nomargin-top"> <li><strong class="pname"><code>text</code></strong> - The complete text of the regular expression being translated</li> <li><strong class="pname"><code>position</code></strong> - The offset of the start of the character group.</li> </ul></dd> <dt>Returns:</dt> <dd>a pair <code>(cps, p)</code> as in _MatchCharPropBraced.</dd> <dt>Raises:</dt> <dd><ul class="nomargin-top"> <li><code><strong class='fraise'><a href="pyxb.utils.xmlre.RegularExpressionError-class.html">RegularExpressionError</a></strong></code> - if the expression is syntactically invalid.</li> </ul></dd> </dl> </td></tr></table> </div> <a name="MaybeMatchCharacterClass"></a> <div> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">MaybeMatchCharacterClass</span>(<span class="sig-arg">text</span>, <span class="sig-arg">position</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#MaybeMatchCharacterClass">source code</a></span> </td> </tr></table> <p>Attempt to match a <a href="http://www.w3.org/TR/xmlschema-2/#nt-charClassExpr" target="_top">character class expression</a>.</p> <dl class="fields"> <dt>Parameters:</dt> <dd><ul class="nomargin-top"> <li><strong class="pname"><code>text</code></strong> - The complete text of the regular expression being translated</li> <li><strong class="pname"><code>position</code></strong> - The offset of the start of the potential expression.</li> </ul></dd> <dt>Returns:</dt> <dd><code>None</code> if <code>position</code> does not begin a character class expression; otherwise a pair <code>(cps, p)</code> as in _MatchCharPropBraced.</dd> </dl> </td></tr></table> </div> <a name="XMLToPython"></a> <div> <table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> <tr><td> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr valign="top"><td> <h3 class="epydoc"><span class="sig"><span class="sig-name">XMLToPython</span>(<span class="sig-arg">pattern</span>)</span> </h3> </td><td align="right" valign="top" ><span class="codelink"><a href="pyxb.utils.xmlre-pysrc.html#XMLToPython">source code</a></span> </td> </tr></table> <p>Convert the given pattern to the format required for Python regular expressions.</p> <dl class="fields"> <dt>Parameters:</dt> <dd><ul class="nomargin-top"> <li><strong class="pname"><code>pattern</code></strong> - A Unicode string defining a pattern consistent with <a href="http://www.w3.org/TR/xmlschema-2/index.html#regexs" target="_top">XML regular expressions</a>.</li> </ul></dd> <dt>Returns:</dt> <dd>A Unicode string specifying a Python regular expression that matches the same language as <code>pattern</code>.</dd> </dl> </td></tr></table> </div> <br /> <!-- ==================== NAVIGATION BAR ==================== --> <table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0"> <tr valign="middle"> <!-- Home link --> <th> <a href="pyxb-module.html">Home</a> </th> <!-- Tree link --> <th> <a href="module-tree.html">Trees</a> </th> <!-- Index link --> <th> <a href="identifier-index.html">Indices</a> </th> <!-- Help link --> <th> <a href="help.html">Help</a> </th> <!-- Project homepage --> <th class="navbar" align="right" width="100%"> <table border="0" cellpadding="0" cellspacing="0"> <tr><th class="navbar" align="center" >PyXB hosted on <a href="http://sourceforge.net/projects/pyxb"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=263147&type=9" width="80" height="15" alt="Get PyXB: Python XML Schema Bindings at SourceForge.net. Fast, secure and Free Open Source software downloads"/></a></th> </tr></table></th> </tr> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%%"> <tr> <td align="left" class="footer"> Generated by Epydoc 3.0.1 on Sun May 30 12:40:27 2010 </td> <td align="right" class="footer"> <a target="mainFrame" href="http://epydoc.sourceforge.net" >http://epydoc.sourceforge.net</a> </td> </tr> </table> <script type="text/javascript"> <!-- // Private objects are initially displayed (because if // javascript is turned off then we want them to be // visible); but by default, we want to hide them. So hide // them unless we have a cookie that says to show them. checkCookie(); // --> </script> </body> </html>