Caret in SQL Regular Expressions
<p>I'm studying regular expressions and cannot figure out what this caret does exactly. I thought that this caret symbol means 'not equal', but in this query below, I am confused:</p>

<pre><code>SELECT REGEXP_REPLACE('San Antonio', '(^[[:alpha:]]+)', 'CITY') TEST
FROM DUAL;
</code></pre>

<p>RESULT: </p>

<blockquote>
  <p>CITY Antonio</p>
</blockquote>

<p>'San' should comply with [:alpha:] so I don't understand what the caret function does here.</p>