forked from docs/doc-exports
Reviewed-by: Hasko, Vladimir <vladimir.hasko@t-systems.com> Reviewed-by: Pruthi, Vineet <vineet.pruthi@t-systems.com> Co-authored-by: Lu, Huayi <luhuayi@huawei.com> Co-committed-by: Lu, Huayi <luhuayi@huawei.com>
565 lines
75 KiB
HTML
565 lines
75 KiB
HTML
<a name="EN-US_TOPIC_0000001819336297"></a><a name="EN-US_TOPIC_0000001819336297"></a>
|
|
|
|
<h1 class="topictitle1">Regular Expression Functions</h1>
|
|
<div id="body8662426"><p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p688119794310">Regular expressions specify patterns to match strings using standardized syntax conventions. In Oracle, regular expressions are implemented using a set of SQL functions that allow you to search and use string data.</p>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p3299131124818">DSC can migrate <a href="#EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section367618918273">REGEXP_INSTR</a>, <a href="#EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section9584371501">REGEXP_SUBSTR</a>, and <a href="#EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section0549591474">REGEXP_REPLACE</a> regular expressions. Details are as follows:</p>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul11121226112619"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li87871736133315">Regexp (REGEXP_INSTR and REGEXP_SUBSTR) that includes the <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b119363412327">sub_expr </strong>parameter are not supported. If the input script includes <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b1859003113212">sub_expr</strong>, the DSC will log an error for it.</li><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li185081021102816">Regexp (REGEXP_INSTR, REGEXP_SUBSTR, and REGXP_REPLACE) uses the <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b1998313393326">match_param</strong><em id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_i3332239103210"> </em>parameter to set the default matching behavior. The DSC supports values i (case-insensitive) and c (case-sensitive) for this parameter. Other values for <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b168792218258">match_param</strong><em id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_i38722252517"> </em>are not supported.</li><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li68471144316">Regexp (REGEXP_INSTR) uses the <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b053213541324">return_option</strong><em id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_i1275654103219"> </em>parameter to set what is returned for regexp. The DSC supports the value 0 (zero) for this parameter. Other values for return_option are not supported.</li></ul>
|
|
<div class="section" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section367618918273"><a name="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section367618918273"></a><a name="en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section367618918273"></a><h4 class="sectiontitle">REGEXP_INSTR</h4><p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p025617773914">REGEXP_INSTR extends the functionality of the INSTR function by supporting the regular expression pattern for the search string. REGEXP_INSTR with 2 to 6 parameters are supported for migration.</p>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p161403414184">The <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b42311410374">sub_expr</strong> parameter (parameter #7) is available in Oracle but is not supported for migration. If the input script includes <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b10990151311377">sub_expr</strong>, the DSC will log an error for it.</p>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p0531525175912">For <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b019917214378">return_option</strong>, the value 0 (zero) is supported. Other values for return_option are not supported.</p>
|
|
<div class="p" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p053132525912">For <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b19952826153711">match_param</strong>, values i (case-insensitive) and c (case-sensitive) are supported. Other values for <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b86718363372">match_param</strong><em id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_i1433753513711"> </em>are not supported.<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen32758727"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span>
|
|
<span class="normal">6</span>
|
|
<span class="normal">7</span>
|
|
<span class="normal">8</span>
|
|
<span class="normal">9</span></pre></div></td><td class="code"><div><pre><span></span><span class="n">REGEXP_INSTR</span><span class="p">(</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="n">string</span><span class="p">,</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="n">pattern</span><span class="p">,</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">start_position</span><span class="p">,]</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">nth_appearance</span><span class="p">,]</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">return_option</span><span class="p">,]</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">match_param</span><span class="p">,]</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">sub_expr</span><span class="p">]</span><span class="w"> </span>
|
|
<span class="p">)</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p964961610437"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b1194142524512">Bulk Operations</strong></p>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul6690729104511"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li12690192914516"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b18690182919455">Input - REGEXP_INSTR</strong></li></ul>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen46081633192614"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">REGEXP_INSTR</span><span class="p">(</span><span class="w"> </span><span class="s1">'TechOnTheNet is a great resource'</span><span class="w"> </span><span class="p">,</span><span class="s1">'t'</span><span class="w"> </span><span class="p">)</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">dual</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p51688209272"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b1258603145311">Output</strong></p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen1416872032714"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span>
|
|
<span class="normal">6</span>
|
|
<span class="normal">7</span>
|
|
<span class="normal">8</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">REGEXP_INSTR</span><span class="w"> </span><span class="p">(</span>
|
|
<span class="w"> </span><span class="s1">'TechOnTheNet is a great resource'</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="s1">'t'</span>
|
|
<span class="w"> </span><span class="p">)</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">dual</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul17219111044710"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li321981014479"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b1121911016474">Input - REGEXP_INSTR with 7 parameters</strong> <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b15423101425216">(Invalid)</strong></li></ul>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen121961019477"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span>
|
|
<span class="normal">6</span>
|
|
<span class="normal">7</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">Empno</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="n">ename</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="n">REGEXP_INSTR</span><span class="p">(</span><span class="w"> </span><span class="n">ename</span><span class="w"> </span><span class="p">,</span><span class="s1">'a|e|i|o|u'</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">0</span><span class="w"> </span><span class="p">,</span><span class="s1">'i'</span><span class="w"> </span><span class="p">,</span><span class="mi">7</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="n">Dname</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">emp19</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p172201410194711"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b1122013107474">Output</strong></p>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p5752154811520">The input expression has 7 parameters. Since the tool supports REGEXP_INSTR with 2 to 6 arguments, an error will be logged, starting "<em id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_i15577515411">Seven(7) arguments for REGEXP_INSTR function is not supported.</em>"</p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen1522012105479"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span>
|
|
<span class="normal">6</span>
|
|
<span class="normal">7</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">Empno</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="n">ename</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="n">REGEXP_INSTR</span><span class="p">(</span><span class="w"> </span><span class="n">ename</span><span class="w"> </span><span class="p">,</span><span class="s1">'a|e|i|o|u'</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">0</span><span class="w"> </span><span class="p">,</span><span class="s1">'i'</span><span class="w"> </span><span class="p">,</span><span class="mi">7</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="n">Dname</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">emp19</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p8372316155617"></p>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p18684727205619"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b13104191852610">BLogic Operations</strong></p>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul9684327195614"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li186845272566"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b1691413814">Input - REGEXP_INSTR</strong></li></ul>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen36851327145618"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span>
|
|
<span class="normal">11</span>
|
|
<span class="normal">12</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">myfct</span>
|
|
<span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span>
|
|
<span class="k">IS</span>
|
|
<span class="n">res</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">200</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="k">BEGIN</span>
|
|
<span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="n">RW</span><span class="p">(</span><span class="n">RW</span><span class="p">.</span><span class="n">empno</span><span class="p">,</span><span class="n">RW</span><span class="p">.</span><span class="n">ename</span><span class="p">,</span><span class="n">dname</span><span class="p">)</span><span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="n">res</span><span class="p">,</span><span class="w"> </span><span class="n">RWN</span><span class="p">.</span><span class="n">ename</span><span class="w"> </span><span class="k">key</span>
|
|
<span class="p">,</span><span class="w"> </span><span class="n">regexp_instr</span><span class="p">(</span><span class="n">ename</span><span class="w"> </span><span class="p">,</span><span class="s1">'[ae]'</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="s1">'i'</span><span class="p">)</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="n">Dname</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="n">RWN</span><span class="w"> </span><span class="p">;</span>
|
|
|
|
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="o">/</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p86869271566"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b76871427125617">Output</strong></p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen968717277568"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span>
|
|
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">myfct</span><span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">200</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">BEGIN</span>
|
|
<span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">empno</span><span class="w"> </span><span class="p">,</span><span class="n">ename</span><span class="w"> </span><span class="p">,</span><span class="n">dname</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">,</span><span class="n">RWN</span><span class="p">.</span><span class="n">ename</span><span class="w"> </span><span class="ss">"KEY"</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">REGEXP_INSTR</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">ename</span><span class="w"> </span><span class="p">,</span><span class="s1">'[ae]'</span><span class="w"> </span><span class="p">,</span><span class="mi">4</span><span class="w"> </span><span class="p">,</span><span class="mi">2</span><span class="w"> </span><span class="p">,</span><span class="mi">0</span><span class="w"> </span><span class="p">,</span><span class="s1">'i'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="n">Dname</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="n">RWN</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">;</span><span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="o">/</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<div class="section" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section9584371501"><a name="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section9584371501"></a><a name="en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section9584371501"></a><h4 class="sectiontitle">REGEXP_SUBSTR</h4><p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p26311753183912">REGEXP_SUBSTR extends the functionality of the SUBSTR function by supporting regular expression pattern for the search string. REGEXP_SUBSTR with 2 to 5 parameters are supported for migration.</p>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p9615452176">The <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b14686194444114">sub_expr</strong> parameter (parameter #6) is available in Oracle but is not supported for migration. If the input script includes <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b143417513413">sub_expr</strong>, the DSC will log an error for it.</p>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p8863102218434">For <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b136153414214">match_param</strong>, values i (case-insensitive) and c (case-sensitive) are supported. Other values for <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b1135917581417">match_param</strong><em id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_i197761057164116"> </em>are not supported.</p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen7541735"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span>
|
|
<span class="normal">6</span>
|
|
<span class="normal">7</span>
|
|
<span class="normal">8</span></pre></div></td><td class="code"><div><pre><span></span><span class="n">REGEXP_SUBSTR</span><span class="p">(</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="n">string</span><span class="p">,</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="n">pattern</span><span class="p">,</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">start_position</span><span class="p">,]</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">nth_appearance</span><span class="p">,]</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">match_param</span><span class="p">,]</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">sub_expr</span><span class="p">]</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="p">)</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p10592372016"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b860193714017">Bulk Operations</strong></p>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul19605371109"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li176003712017"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b5611537100">Input - REGEXP_SUBSTR</strong></li></ul>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen3611037904"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span>
|
|
<span class="normal">6</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">Ename</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="n">REGEXP_SUBSTR</span><span class="p">(</span><span class="w"> </span><span class="s1">'Programming'</span><span class="w"> </span><span class="p">,</span><span class="s1">'(\w).*?\1'</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="s1">'i'</span><span class="w"> </span><span class="p">)</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">emp16</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p1764537408"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b201487799">Output</strong></p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen136417371308"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span>
|
|
<span class="normal">11</span>
|
|
<span class="normal">12</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">Ename</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">REGEXP_SUBSTR</span><span class="w"> </span><span class="p">(</span>
|
|
<span class="w"> </span><span class="s1">'Programming'</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="s1">'(\w).*?\1'</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="mi">1</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="mi">1</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="s1">'i'</span>
|
|
<span class="w"> </span><span class="p">)</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">emp16</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<div class="p" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p119681615143913"><ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul18136723131516"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li2137523111519"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b11140172361518">Input - REGEXP_SUBSTR</strong></li></ul>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen8140132312150"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">REGEXP_SUBSTR</span><span class="p">(</span><span class="w"> </span><span class="s1">'1234567890'</span><span class="w"> </span><span class="p">,</span><span class="s1">'(123)(4(56)(78))'</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="s1">'i'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="ss">"REGEXP_SUBSTR"</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">DUAL</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p4150122311159"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b1137794507">Output</strong></p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen715119238153"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span>
|
|
<span class="normal">11</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">REGEXP_SUBSTR</span><span class="w"> </span><span class="p">(</span>
|
|
<span class="w"> </span><span class="s1">'1234567890'</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="s1">'(123)(4(56)(78))'</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="mi">1</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="mi">1</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="s1">'i'</span>
|
|
<span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="ss">"REGEXP_SUBSTR"</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">DUAL</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul1868173719015"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li116853711016"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b36910372018">Input - REGEXP_SUBSTR with 6 parameters</strong> <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b11691237502">(Invalid)</strong></li></ul>
|
|
<pre class="screen" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen47010371809">SELECT
|
|
REGEXP_SUBSTR( '1234567890' ,'(123)(4(56)(78))' ,1 ,1 ,'i' ,1 ) "REGEXP_SUBSTR"
|
|
FROM
|
|
DUAL
|
|
;</pre>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p197412376020"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b47515372013">Output</strong></p>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p775337907">The input expression has 6 arguments. Since the tool supports REGEXP_SUBSTR with 2 to 5 parameters an error will be logged, starting "<em id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_i4901110455">Error message: Six(6) arguments for REGEXP_SUBSTR function is not supported.</em>"</p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen14161250110"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">REGEXP_SUBSTR</span><span class="p">(</span><span class="w"> </span><span class="s1">'1234567890'</span><span class="w"> </span><span class="p">,</span><span class="s1">'(123)(4(56)(78))'</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="s1">'i'</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="ss">"REGEXP_SUBSTR"</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">DUAL</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p1381163719013"></p>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p168211372004"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b4488155862610">BLogic Operations</strong></p>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul148233717015"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li15839371704"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b935756089">Input - REGEXP_SUBSTR</strong></li></ul>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen118419371200"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span>
|
|
<span class="normal">11</span>
|
|
<span class="normal">12</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">myfct</span>
|
|
<span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span>
|
|
<span class="k">IS</span>
|
|
<span class="n">res</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">200</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="k">BEGIN</span>
|
|
<span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="n">RW</span><span class="p">(</span><span class="n">RW</span><span class="p">.</span><span class="n">empno</span><span class="p">,</span><span class="n">RW</span><span class="p">.</span><span class="n">ename</span><span class="p">,</span><span class="n">dname</span><span class="p">)</span><span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="n">res</span><span class="p">,</span><span class="w"> </span><span class="n">RWN</span><span class="p">.</span><span class="n">ename</span><span class="w"> </span><span class="k">key</span>
|
|
<span class="p">,</span><span class="n">REGEXP_</span><span class="w"> </span><span class="n">SUBSTR</span><span class="w"> </span><span class="p">(</span><span class="s1">'TechOnTheNet'</span><span class="p">,</span><span class="w"> </span><span class="s1">'a|e|i|o|u'</span><span class="p">,</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="s1">'i'</span><span class="p">)</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="n">Dname</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="n">RWN</span><span class="w"> </span><span class="p">;</span>
|
|
|
|
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="o">/</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p10871371707"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b913264716">Output</strong></p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen68723712010"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span>
|
|
<span class="normal">11</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span>
|
|
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">myfct</span><span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">200</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">BEGIN</span>
|
|
<span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">empno</span><span class="w"> </span><span class="p">,</span><span class="n">ename</span><span class="w"> </span><span class="p">,</span><span class="n">dname</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">,</span><span class="n">RWN</span><span class="p">.</span><span class="n">ename</span><span class="w"> </span><span class="ss">"KEY"</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">REGEXP_</span><span class="w"> </span><span class="n">SUBSTR</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'TechOnTheNet'</span><span class="w"> </span><span class="p">,</span><span class="s1">'a|e|i|o|u'</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="s1">'i'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="n">Dname</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="n">RWN</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="o">/</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<div class="section" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section0549591474"><a name="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section0549591474"></a><a name="en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section0549591474"></a><h4 class="sectiontitle">REGEXP_REPLACE</h4><p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p142193141617">REGEXP_REPLACE extends the functionality of the REPLACE function by supporting regular expression pattern for the search string. REGEXP_REPLACE with 2 to 6 parameters are supported for migration.</p>
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p267392624716">For <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b283428142">match_param</strong>, values i (case-insensitive) and c (case-sensitive) are supported. Other values for <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b1107868858">match_param</strong><em id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_i665262050"> </em>are not supported.</p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen2529132514325"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span>
|
|
<span class="normal">6</span>
|
|
<span class="normal">7</span>
|
|
<span class="normal">8</span></pre></div></td><td class="code"><div><pre><span></span><span class="n">REGEXP_REPLACE</span><span class="p">(</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="n">string</span><span class="p">,</span><span class="w"> </span>
|
|
<span class="w"> </span><span class="n">pattern</span><span class="p">,</span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">replacement_string</span><span class="p">,]</span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">start_position</span><span class="p">,]</span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">nth_appearance</span><span class="p">,]</span>
|
|
<span class="w"> </span><span class="p">[</span><span class="n">match_param</span><span class="p">]</span>
|
|
<span class="w"> </span><span class="p">)</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p14551129270"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b125518918714">Bulk Operations</strong></p>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul85521895716"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li135521895718"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b4431144216185">Input - REGEXP_REPLACE</strong></li></ul>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen1655413919714"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span>
|
|
<span class="normal">6</span>
|
|
<span class="normal">7</span>
|
|
<span class="normal">8</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">testcol</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="n">regexp_replace</span><span class="p">(</span><span class="w"> </span><span class="n">testcol</span><span class="w"> </span><span class="p">,</span><span class="s1">'([[:digit:]]{3})\.([[:digit:]]{3})\.([[:digit:]]{4})'</span><span class="w"> </span><span class="p">,</span><span class="s1">'(\1) \2-\3'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">RESULT</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">test</span>
|
|
<span class="w"> </span><span class="k">WHERE</span>
|
|
<span class="w"> </span><span class="k">LENGTH</span><span class="p">(</span><span class="w"> </span><span class="n">testcol</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">12</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p6560149875"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b1411908192">Output</strong></p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen1485531213213"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span>
|
|
<span class="normal">11</span>
|
|
<span class="normal">12</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">testcol</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">REGEXP_REPLACE</span><span class="w"> </span><span class="p">(</span>
|
|
<span class="w"> </span><span class="n">testcol</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="s1">'([[:digit:]]{3})\.([[:digit:]]{3})\. ([[:digit:]]{4})'</span>
|
|
<span class="w"> </span><span class="p">,</span><span class="s1">'(\1) \2-\3'</span>
|
|
<span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">RESULT</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">test</span>
|
|
<span class="w"> </span><span class="k">WHERE</span>
|
|
<span class="w"> </span><span class="k">LENGTH</span><span class="p">(</span><span class="w"> </span><span class="n">testcol</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">12</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<div class="p" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p5996915173911"><ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul242784281814"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li17429184201810"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b10582163118299">Input - REGEXP_REPLACE</strong></li></ul>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen114321542151812"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="n">regexp_replace</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'foobarbequebazilbarfbonk barbeque'</span><span class="w"> </span><span class="p">,</span><span class="s1">'(b[^b]+)(b[^b]+)'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">)</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">DUAL</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p12442742121810"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b9919125513272">Output</strong></p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen8447164261818"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">REGEXP_REPLACE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'foobarbequebazilbarfbonk barbeque'</span><span class="w"> </span><span class="p">,</span><span class="s1">'(b[^b]+)(b[^b]+)'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">)</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">DUAL</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul16566091879"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li16701565183"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b1863413872811">Input - REGEXP_REPLACE with 7 parameters</strong> <strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b1563410389283">(Invalid)</strong></li></ul>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen15568191878"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">REGEXP_REPLACE</span><span class="p">(</span><span class="w"> </span><span class="s1">'TechOnTheNet'</span><span class="w"> </span><span class="p">,</span><span class="s1">'a|e|i|o|u'</span><span class="w"> </span><span class="p">,</span><span class="s1">'Z'</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="s1">'i'</span><span class="w"> </span><span class="p">,</span><span class="s1">'(\1) \2-\3'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="n">First_Occurrence</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">emp</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p115711093710"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b1861320478292">Output</strong></p>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p17572189775">The input expression has 7 parameters. Since the tool supports REGEXP_REPLACE with 2 to 6 parameters, an error will be logged, starting "<em id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_i134016528298">Too many arguments for REGEXP_REPLACE function [Max:6 argument(s) is/are allowed].</em>"</p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen2057319911712"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span>
|
|
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">REGEXP_REPLACE</span><span class="p">(</span><span class="w"> </span><span class="s1">'TechOnTheNet'</span><span class="w"> </span><span class="p">,</span><span class="s1">'a|e|i|o|u'</span><span class="w"> </span><span class="p">,</span><span class="s1">'Z'</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="s1">'i'</span><span class="w"> </span><span class="p">,</span><span class="s1">'(\1) \2-\3'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="n">First_Occurrence</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">emp</span>
|
|
<span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p157699873"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b1692532304">BLogic Operations</strong></p>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul1957718912718"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li1357814915714"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b19335886305">Input - REGEXP_REPLACE</strong></li></ul>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen25790914718"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span>
|
|
<span class="normal">11</span>
|
|
<span class="normal">12</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">myfct</span>
|
|
<span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span>
|
|
<span class="k">IS</span>
|
|
<span class="n">res</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">200</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="k">BEGIN</span>
|
|
<span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="n">RW</span><span class="p">(</span><span class="n">RW</span><span class="p">.</span><span class="n">empno</span><span class="p">,</span><span class="n">RW</span><span class="p">.</span><span class="n">ename</span><span class="p">,</span><span class="n">dname</span><span class="p">)</span><span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="n">res</span><span class="p">,</span><span class="w"> </span><span class="n">RWN</span><span class="p">.</span><span class="n">ename</span><span class="w"> </span><span class="k">key</span>
|
|
<span class="p">,</span><span class="n">REGEXP_REPLACE</span><span class="w"> </span><span class="p">(</span><span class="s1">'TechOnTheNet'</span><span class="p">,</span><span class="w"> </span><span class="s1">'a|e|i|o|u'</span><span class="p">,</span><span class="w"> </span><span class="s1">'Z'</span><span class="p">,</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="s1">'i'</span><span class="p">)</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="n">Dname</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="n">RWN</span><span class="w"> </span><span class="p">;</span>
|
|
|
|
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="o">/</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p158514918716"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_b16485141483020">Output</strong></p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen9586119477"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span>
|
|
<span class="normal">11</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span>
|
|
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">myfct</span><span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">200</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">BEGIN</span>
|
|
<span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">empno</span><span class="w"> </span><span class="p">,</span><span class="n">ename</span><span class="w"> </span><span class="p">,</span><span class="n">dname</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">SELECT</span>
|
|
<span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">,</span><span class="n">RWN</span><span class="p">.</span><span class="n">ename</span><span class="w"> </span><span class="ss">"KEY"</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">REGEXP_REPLACE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'TechOnTheNet'</span><span class="w"> </span><span class="p">,</span><span class="s1">'a|e|i|o|u'</span><span class="w"> </span><span class="p">,</span><span class="s1">'Z'</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="mi">1</span><span class="w"> </span><span class="p">,</span><span class="s1">'i'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="n">Dname</span>
|
|
<span class="w"> </span><span class="k">FROM</span>
|
|
<span class="w"> </span><span class="n">emp19</span><span class="w"> </span><span class="n">RWN</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">res</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="o">/</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<div class="section" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_section165161830112516"><h4 class="sectiontitle">LISTAGG/regexp_replace/regexp_instr</h4><p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p635715273268">Configure the following parameters before migrating LISTAGG/regexp_replace/regexp_instr:</p>
|
|
<ul id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_ul11357927172610"><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li7357112722615">MigSupportForListAgg=false</li><li id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_li0357152712612">MigSupportForRegexReplace=false</li></ul>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p16357142722613"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b83571627122617">Input- REMOVE LISTAGG/regexp_replace/regexp_instr</strong></p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen93571527192612"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span>
|
|
<span class="normal">11</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span><span class="w"> </span><span class="n">LISTAGG</span><span class="p">(</span><span class="n">T</span><span class="p">.</span><span class="n">OS_SOFTASSETS_ID</span><span class="p">,</span><span class="s1">','</span><span class="p">)</span><span class="w"> </span><span class="n">WITHIN</span><span class="w"> </span><span class="k">GROUP</span><span class="p">(</span><span class="k">ORDER</span><span class="w"> </span><span class="k">BY</span><span class="w"> </span><span class="n">T</span><span class="p">.</span><span class="n">SOFTASSETS_ID</span><span class="p">)</span>
|
|
<span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">V_OS_SOFTASSETS_IDS</span>
|
|
<span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">SPMS_SYSSOFT_PROP_APPR</span><span class="w"> </span><span class="n">T</span>
|
|
<span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">T</span><span class="p">.</span><span class="n">APPR_ID</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">I_APPR_ID</span>
|
|
<span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">T</span><span class="p">.</span><span class="n">SYSSOFT_PROP</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">'001'</span><span class="p">;</span>
|
|
<span class="w"> </span>
|
|
<span class="n">V_ONLY_FILE_NAME</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">REGEXP_REPLACE</span><span class="p">(</span><span class="w"> </span><span class="n">I_FILENAME</span><span class="w"> </span><span class="p">,</span><span class="s1">'.*/'</span><span class="w"> </span><span class="p">,</span><span class="s1">''</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
|
|
<span class="w"> </span>
|
|
<span class="k">THEN</span><span class="w"> </span><span class="n">v_auth_type</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="mi">102</span><span class="p">;</span>
|
|
<span class="w"> </span><span class="k">ELSIF</span><span class="w"> </span><span class="n">v_status</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="p">(</span><span class="s1">'0100'</span><span class="p">,</span><span class="w"> </span><span class="s1">'0200'</span><span class="p">)</span>
|
|
<span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">REGEXP_INSTR</span><span class="w"> </span><span class="p">(</span><span class="n">v_role_str</span><span class="p">,</span><span class="w"> </span><span class="s1">',(411|414),'</span><span class="p">)</span><span class="w"> </span><span class="o">></span><span class="w"> </span><span class="mi">0</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
<p id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_p5357122719264"><strong id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0237712555_b15298151973912">Output</strong></p>
|
|
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001819336297__en-us_topic_0000001658024578_en-us_topic_0238518400_en-us_topic_0237362432_en-us_topic_0202727114_screen1935792719269"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
|
|
<span class="normal"> 2</span>
|
|
<span class="normal"> 3</span>
|
|
<span class="normal"> 4</span>
|
|
<span class="normal"> 5</span>
|
|
<span class="normal"> 6</span>
|
|
<span class="normal"> 7</span>
|
|
<span class="normal"> 8</span>
|
|
<span class="normal"> 9</span>
|
|
<span class="normal">10</span>
|
|
<span class="normal">11</span></pre></div></td><td class="code"><div><pre><span></span><span class="ss">"SELECT LISTAGG(T.OS_SOFTASSETS_ID,',') WITHIN GROUP(ORDER BY T.SOFTASSETS_ID)</span>
|
|
<span class="ss"> INTO V_OS_SOFTASSETS_IDS</span>
|
|
<span class="ss"> FROM SPMS_SYSSOFT_PROP_APPR T</span>
|
|
<span class="ss"> WHERE T.APPR_ID = I_APPR_ID</span>
|
|
<span class="ss"> AND T.SYSSOFT_PROP = '001';</span>
|
|
<span class="ss"> </span>
|
|
<span class="ss">V_ONLY_FILE_NAME := REGEXP_REPLACE (I_FILENAME, '.*/', '');</span>
|
|
<span class="ss"> </span>
|
|
<span class="ss">THEN v_auth_type := 102;</span>
|
|
<span class="ss"> ELSIF v_status IN ('0100', '0200')</span>
|
|
<span class="ss"> AND REGEXP_INSTR (v_role_str, ',(411|414),') > 0"</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div class="familylinks">
|
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="dws_mt_0133.html">System Functions</a></div>
|
|
</div>
|
|
</div>
|
|
|