sql >> Database >  >> RDS >> Oracle

Zoek in een tekenreeks naar een patroon voor reguliere expressies en vervang elk voorkomen als een afleiding van zichzelf in Oracle SQL

Geen regexp maar het werkt.

select  xmlcast( xmlquery('for $w in tokenize($text," ") return
    if(fn:matches($w,"[0-9]{1,3}")) then (xs:decimal($w)+$offset) else ($w)'
                passing 'i want to increase those numbers 20 and 15' as "text", 5 as "offset" returning content) as varchar2(1000))
  from dual;

Oplossing zoekt naar gehele getallen in tekst. Voor decimale moet interne regex worden uitgebreid.

\d en [:digit:] worden niet ondersteund door xmlquery



  1. mysql_escape_string() functie is verouderd gebruik mysql_real_escape_string() Codeigniter

  2. Hoe genereer ik een unieke, willekeurige tekenreeks voor een van mijn MySql-tabelkolommen?

  3. De invoer van een kolom in postgres opschonen

  4. SQL Server TRIM-, LTRIM- en RTRIM-functies