Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 71d40963b505df4524269198e237b3e3 > files > 466

virtuoso-opensource-doc-6.1.4-2.fc14.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
 <head profile="http://internetalchemy.org/2003/02/profile">
  <link rel="foaf" type="application/rdf+xml" title="FOAF" href="http://www.openlinksw.com/dataspace/uda/about.rdf" />
  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
  <meta name="dc.title" content="Function: regexp_parse - Virtuoso Functions Guide" />
  <meta name="dc.subject" content="Function: regexp_parse - Virtuoso Functions Guide" />
  <meta name="dc.creator" content="OpenLink Software Documentation Team ;&#10;" />
  <meta name="dc.copyright" content="OpenLink Software, 1999 - 2009" />
  <link rel="top" href="index.html" title="OpenLink Virtuoso Universal Server: Documentation" />
  <link rel="search" href="/doc/adv_search.vspx" title="Search OpenLink Virtuoso Universal Server: Documentation" />
  <link rel="parent" href="functions.html" title="Chapter Contents" />
  <link rel="prev" href="appendixa.html" title="Appendix" />
  <link rel="next" href="functions.html#.html" title="" />
  <link rel="shortcut icon" href="../images/misc/favicon.ico" type="image/x-icon" />
  <link rel="stylesheet" type="text/css" href="doc.css" />
  <link rel="stylesheet" type="text/css" href="/doc/translation.css" />
  <title>Function: regexp_parse - Virtuoso Functions Guide</title>
  <meta http-equiv="Content-Type" content="text/xhtml; charset=UTF-8" />
  <meta name="author" content="OpenLink Software Documentation Team ;&#10;" />
  <meta name="copyright" content="OpenLink Software, 1999 - 2009" />
  <meta name="keywords" content="" />
  <meta name="GENERATOR" content="OpenLink XSLT Team" />
 </head>
 <body>
  <div id="header">
    <a name="fn_regexp_parse" />
    <img src="../images/misc/logo.jpg" alt="" />
    <h1>22. Virtuoso Functions Guide - regexp_parse</h1>
  </div>
  <div id="navbartop">
   <div>
      <a class="link" href="functions.html">Chapter Contents</a> | <a class="link" href="fn_regexp_match.html" title="regexp_match">Prev</a> | <a class="link" href="fn_regexp_substr.html" title="regexp_substr">Next</a>
   </div>
  </div>
  <div id="currenttoc">
   <form method="post" action="/doc/adv_search.vspx">
    <div class="search">Keyword Search: <br />
        <input type="text" name="q" /> <input type="submit" name="go" value="Go" />
    </div>
   </form>
   <div>
      <a href="http://www.openlinksw.com/">www.openlinksw.com</a>
   </div>
   <div>
      <a href="http://docs.openlinksw.com/">docs.openlinksw.com</a>
   </div>
    <br />
   <div>
      <a href="index.html">Book Home</a>
   </div>
    <br />
   <div>
      <a href="contents.html">Contents</a>
   </div>
   <div>
      <a href="preface.html">Preface</a>
   </div>
    <br />
   <div>
      <a class="selected" href="functions.html">Virtuoso Functions Guide</a>
   </div>
    <br />
   <div>
      <a href="functions.html#admin">Administration</a>
   </div>
   <div>
      <a href="functions.html#aggr">Aggregate Functions</a>
   </div>
   <div>
      <a href="functions.html#array">Array Manipulation</a>
   </div>
   <div>
      <a href="functions.html#bpel">BPEL APIs</a>
   </div>
   <div>
      <a href="functions.html#backup">Backup</a>
   </div>
   <div>
      <a href="functions.html#compression">Compression</a>
   </div>
   <div>
      <a href="functions.html#cursors">Cursor</a>
   </div>
   <div>
      <a href="functions.html#time">Date &amp; Time Manipulation</a>
   </div>
   <div>
      <a href="functions.html#debug">Debug</a>
   </div>
   <div>
      <a href="functions.html#dict">Dictionary Manipulation</a>
   </div>
   <div>
      <a href="functions.html#encoding">Encoding &amp; Decoding</a>
   </div>
   <div>
      <a href="functions.html#file">File Manipulation</a>
   </div>
   <div>
      <a href="functions.html#ft">Free Text</a>
   </div>
   <div>
      <a href="functions.html#hash">Hashing / Cryptographic</a>
   </div>
   <div>
      <a href="functions.html#ldap">LDAP</a>
   </div>
   <div>
      <a href="functions.html#localization">Locale</a>
   </div>
   <div>
      <a href="functions.html#mail">Mail</a>
   </div>
   <div>
      <a href="functions.html#misc">Miscellaneous</a>
   </div>
   <div>
      <a href="functions.html#number">Number</a>
   </div>
   <div>
      <a href="functions.html#phrz">Phrases</a>
   </div>
   <div>
      <a href="functions.html#rdf">RDF data</a>
   </div>
   <div>
      <a href="functions.html#rmt">Remote SQL Data Source</a>
   </div>
   <div>
      <a href="functions.html#repl">Replication</a>
   </div>
   <div>
      <a href="functions.html#soap">SOAP</a>
   </div>
   <div>
      <a href="functions.html#sql">SQL</a>
   </div>
   <div>
      <a class="selected" href="functions.html#string">String</a>
   </div>
   <div class="selected">
    <div>
        <a href="fn_ascii.html">ascii</a>
    </div>
    <div>
        <a href="fn_blob_to_string.html">blob_to_string</a>
    </div>
    <div>
        <a href="fn_blob_to_string_output.html">blob_to_string_outpu...</a>
    </div>
    <div>
        <a href="fn_chr.html">chr</a>
    </div>
    <div>
        <a href="fn_ends_with.html">ends_with</a>
    </div>
    <div>
        <a href="fn_initcap.html">initcap</a>
    </div>
    <div>
        <a href="fn_isblob.html">isblob</a>
    </div>
    <div>
        <a href="fn_isstring.html">isstring</a>
    </div>
    <div>
        <a href="fn_lcase.html">lcase</a>
    </div>
    <div>
        <a href="fn_left.html">left</a>
    </div>
    <div>
        <a href="fn_length.html">length</a>
    </div>
    <div>
        <a href="fn_locate.html">locate</a>
    </div>
    <div>
        <a href="fn_ltrim.html">ltrim</a>
    </div>
    <div>
        <a href="fn_make_string.html">make_string</a>
    </div>
    <div>
        <a href="fn_regexp_instr.html">regexp_instr</a>
    </div>
    <div>
        <a href="fn_regexp_like.html">regexp_like</a>
    </div>
    <div>
        <a href="fn_regexp_match.html">regexp_match</a>
    </div>
    <div>
        <a class="selected" href="fn_regexp_parse.html">regexp_parse</a>
    </div>
    <div>
        <a href="fn_regexp_replace.html">regexp_replace</a>
    </div>
    <div>
        <a href="fn_regexp_substr.html">regexp_substr</a>
    </div>
    <div>
        <a href="fn_repeat.html">repeat</a>
    </div>
    <div>
        <a href="fn_replace.html">replace</a>
    </div>
    <div>
        <a href="fn_right.html">right</a>
    </div>
    <div>
        <a href="fn_rtrim.html">rtrim</a>
    </div>
    <div>
        <a href="fn_search_excerpt.html">search_excerpt</a>
    </div>
    <div>
        <a href="fn_serialize.html">serialize</a>
    </div>
    <div>
        <a href="fn_space.html">space</a>
    </div>
    <div>
        <a href="fn_split_and_decode.html">split_and_decode</a>
    </div>
    <div>
        <a href="fn_sprintf.html">sprintf</a>
    </div>
    <div>
        <a href="fn_sprintf_inverse.html">sprintf_inverse</a>
    </div>
    <div>
        <a href="fn_sprintf_iri.html">sprintf_iri</a>
    </div>
    <div>
        <a href="fn_sprintf_iri_or_null.html">sprintf_iri_or_null</a>
    </div>
    <div>
        <a href="fn_sprintf_or_null.html">sprintf_or_null</a>
    </div>
    <div>
        <a href="fn_starts_with.html">starts_with</a>
    </div>
    <div>
        <a href="fn_strcasestr.html">strcasestr</a>
    </div>
    <div>
        <a href="fn_strchr.html">strchr</a>
    </div>
    <div>
        <a href="fn_strcontains.html">strcontains</a>
    </div>
    <div>
        <a href="fn_string_output.html">string_output</a>
    </div>
    <div>
        <a href="fn_string_output_flush.html">string_output_flush</a>
    </div>
    <div>
        <a href="fn_string_output_gz_compress.html">string_output_gz_com...</a>
    </div>
    <div>
        <a href="fn_string_output_string.html">string_output_string</a>
    </div>
    <div>
        <a href="fn_string_to_file.html">string_to_file</a>
    </div>
    <div>
        <a href="fn_strrchr.html">strrchr</a>
    </div>
    <div>
        <a href="fn_strstr.html">strstr</a>
    </div>
    <div>
        <a href="fn_subseq.html">subseq</a>
    </div>
    <div>
        <a href="fn_substring.html">substring</a>
    </div>
    <div>
        <a href="fn_tmp_file_name.html">tmp_file_name</a>
    </div>
    <div>
        <a href="fn_trim.html">trim</a>
    </div>
    <div>
        <a href="fn_ucase.html">ucase</a>
    </div>
    <div>
        <a href="fn_upper.html">upper</a>
    </div>
   </div>
   <div>
      <a href="functions.html#txn">Transaction</a>
   </div>
   <div>
      <a href="functions.html#type">Type Mapping</a>
   </div>
   <div>
      <a href="functions.html#uddi">UDDI</a>
   </div>
   <div>
      <a href="functions.html#udt">User Defined Types &amp; The CLR</a>
   </div>
   <div>
      <a href="functions.html#vad">VAD</a>
   </div>
   <div>
      <a href="functions.html#jvmpl">Virtuoso Java PL API</a>
   </div>
   <div>
      <a href="functions.html#bif">Virtuoso Server Extension Interface (VSEI)</a>
   </div>
   <div>
      <a href="functions.html#ws">Web &amp; Internet</a>
   </div>
   <div>
      <a href="functions.html#xml">XML</a>
   </div>
   <div>
      <a href="functions.html#XPATH">XPATH &amp; XQUERY</a>
   </div>
    <br />
   <div>
      <a href="functionidx.html">Functions Index</a>
   </div>
    <br />
  </div>
  <div id="text">
    <h2>regexp_parse</h2>
    <div class="refpurpose">returns substrings that match the regular expression
	in supplied string after an offset</div>
    <div class="funcsynopsis">
        <span class="funcdef">index_vector <span class="function">regexp_parse</span>
      </span>
        (<span class="paramdef">in <span class="parameter">pattern</span> string</span>, 
        <span class="paramdef">in <span class="parameter">target_string</span> string</span>, 
        <span class="paramdef">in <span class="parameter">offset</span> integer</span>);
      </div>
  
  
  
  <div class="refsect1">
      <div class="refsect1title">Description</div>
      <p>
It applies regular expression to target_str with offset. This function returns a
vector containing 2 elements for first match of the pattern and if there a sub expressions : 
2 elements for each of subexpression match. 
The first (even numbered) element of each pair is the start index and the second 
(odd numbered) is the end index of the match.
The regexp_parse function is more efficient than regexp_match and regexp_substr,
because it doesn&#39;t allocate strings.
      </p>
      <div>
        <pre class="programlisting">
	  SQL&gt; select regexp_parse(&#39;(2[34]).*(2[35])&#39;,&#39;22232225222323&#39;, 0);
	  callret
	  VARCHAR
	  _______________________________________________________________________________

	  lvector(2,14,2,4,12,14)

	  1 Rows. -- 10 msec.
      </pre>
      </div>
      <p>
	  Where: 2-14 is a range matched by whole expression,
	  2-4 is a range where &#39;(2[34])&#39; is matched , and 12-14 
	  is a range where &#39;(2[35])&#39; subexpression matched.
      </p>
			<a name="ex_regexp_parse" />
      <div class="example">
<div class="exampletitle">Examples</div>
<div>
          <pre class="programlisting">
CREATE PROCEDURE all_tokens2 (IN pattern VARCHAR,IN str VARCHAR, IN offs INTEGER)
{

	DECLARE vec ANY;
	DECLARE i INTEGER;
	DECLARE out_str VARCHAR;


	vec:=regexp_parse(pattern,str,offs);
	IF ((vec IS NOT NULL) AND (length(vec)&gt;1))
	{
		out_str:=&#39;&#39;;
		i:=0;
		WHILE ( (length(vec)/2) &gt; i )
		{
			out_str:=concat(out_str,&#39;/&#39;,
				subseq(str,aref(vec,(i)*2),
				aref(vec,(i)*2+1)));
			i:=i+1;
		};
		RETURN concat(out_str,test_parsing(pattern,str,aref(vec,1)+1));
	}
	return NULL;
};
</pre>
        </div>
</div>
</div>
  <div class="refsect1">
      <div class="refsect1title">See Also</div>
    <p>
        <a href="fn_regexp_match.html">regexp_match()</a>
      </p>
    <p>
        <a href="fn_regexp_like.html">regexp_like()</a>
      </p>
    <p>
        <a href="fn_regexp_instr.html">regexp_instr()</a>
      </p>
    <p>
        <a href="fn_regexp_replace.html">regexp_replace()</a>
      </p>
    <p>
        <a href="fn_regexp_substr.html">regexp_substr()</a>
      </p>
  </div>
</div>
  <div id="footer">
    <div>Copyright© 1999 - 2009 OpenLink Software All rights reserved.</div>
   <div id="validation">
    <a href="http://validator.w3.org/check/referer">
        <img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" />
    </a>
    <a href="http://jigsaw.w3.org/css-validator/">
        <img src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!" height="31" width="88" />
    </a>
   </div>
  </div>
 </body>
</html>