

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# RLIKE
<a name="RLIKE"></a>

L'operatore RLIKE consente di verificare se una stringa corrisponde a un modello di espressione regolare specificato.

Restituisce `true` se str corrisponde `regexp` o `false` meno.

## Sintassi
<a name="RLIKE-syntax"></a>

```
rlike(str, regexp)
```

## Argomenti
<a name="RLIKE-arguments"></a>

 *str*   
Un'espressione di tipo stringa

 *regexp*   
Un'espressione stringa. La stringa regex deve essere un'espressione regolare Java.  
I valori letterali delle stringhe (inclusi i modelli regex) non sono inclusi nel nostro parser SQL. Ad esempio, per corrispondere a «\$1 abc», un'espressione regolare per *regexp* può essere «^\$1 abc\$1».

## Esempi
<a name="RLIKE-examples"></a>

L'esempio seguente imposta il valore del parametro di configurazione su. `spark.sql.parser.escapedStringLiterals` `true` Questo parametro è specifico del motore SQL Spark. Il `spark.sql.parser.escapedStringLiterals` parametro in Spark SQL controlla il modo in cui il parser SQL gestisce le stringhe letterali con escape. Se impostato su`true`, il parser interpreterà i caratteri della barra rovesciata (`\`) all'interno delle stringhe letterali come caratteri di escape, consentendoti di includere caratteri speciali come nuove righe, tabulazioni e virgolette nei valori delle stringhe. 

```
SET spark.sql.parser.escapedStringLiterals=true;
spark.sql.parser.escapedStringLiterals  true
```

Ad esempio, con`spark.sql.parser.escapedStringLiterals=true`, è possibile utilizzare la seguente stringa letterale nella query SQL:

```
SELECT 'Hello, world!\n'
```

Il carattere di nuova riga `\n` verrebbe interpretato come un carattere letterale di nuova riga nell'output. 

L'esempio seguente esegue una corrispondenza del modello di espressione regolare. Il primo argomento viene passato all'operatore RLIKE. È una stringa che rappresenta il percorso di un file, in cui il nome utente effettivo viene sostituito dal pattern '\$1\$1\$1\$1'. Il secondo argomento è il modello di espressione regolare usato per la corrispondenza. L'output (`true`) indica che la prima stringa (`'%SystemDrive%\Users\****'`) corrisponde all'espressione regolare pattern (`'%SystemDrive%\\Users.*'`).

```
SELECT rlike('%SystemDrive%\Users\John', '%SystemDrive%\Users.*');
true
```