

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à.

# Corrispondenza dei valori di stringa
<a name="string-value-matching"></a>

Filtra i messaggi abbinando i valori delle stringhe ai valori degli attributi del messaggio o ai valori delle proprietà del corpo del messaggio. Nella policy JSON, i valori di stringa sono racchiusi tra virgolette doppie. È possibile utilizzare le seguenti operazioni sulle stringhe per abbinare gli attributi o le proprietà del corpo del messaggio:

## Corrispondenza esatta
<a name="string-exact-matching"></a>

La corrispondenza esatta si verifica quando un valore di proprietà della policy corrisponde a uno o più valori di attributo del messaggio. Per gli attributi `String.Array` di tipo, ogni elemento dell'array viene trattato come una stringa separata per scopi di corrispondenza.

Esaminiamo la seguente proprietà della policy:

```
"customer_interests": ["rugby", "tennis"]
```

Corrisponde ai seguenti attributi di messaggio:

```
"customer_interests": {"Type": "String", "Value": "rugby"}
```

```
"customer_interests": {"Type": "String", "Value": "tennis"}
```

```
"customer_interests": {"Type": "String.Array", "Value": "[\"rugby\", \"tennis\"]"}
```

Corrisponde anche ai seguenti corpi dei messaggi:

```
{
   "customer_interests": "rugby"
}
```

```
{
   "customer_interests": "tennis"
}
```

Tuttavia, non corrisponde ai seguenti attributi del messaggio:

```
"customer_interests": {"Type": "String", "Value": "baseball"}
```

```
"customer_interests": {"Type": "String.Array", "Value": "[\"baseball\"]"}
```

Né corrisponde al seguente corpo del messaggio:

```
{
   "customer_interests": "baseball"
}
```

## Corrispondenza anything-but
<a name="string-anything-but-matching"></a>

Quando un valore della proprietà della policy include la parola chiave `anything-but`, corrisponde a qualsiasi attributo del messaggio o valore del corpo del messaggio che *non* include nessuno dei valori delle proprietà della policy. `anything-but` può essere combinato con `"exists": false`. Per gli attributi `String.Array` di tipo, corrisponde se nessuno degli elementi dell'array è elencato nella proprietà policy.

Esaminiamo la seguente proprietà della policy:

```
"customer_interests": [{"anything-but": ["rugby", "tennis"]}]
```

Corrisponde a uno dei seguenti attributi del messaggio:

```
"customer_interests": {"Type": "String", "Value": "baseball"}
```

```
"customer_interests": {"Type": "String", "Value": "football"}
```

```
"customer_interests": {"Type": "String.Array", "Value": "[\"rugby\", \"baseball\"]"}
```

Corrisponde anche a uno dei seguenti corpi dei messaggi:

```
{
   "customer_interests": "baseball"
}
```

```
{
   "customer_interests": "football"
}
```

Inoltre, corrisponde anche al seguente attributo di messaggio (poiché contiene un valore che *non è* `rugby` o `tennis`):

```
"customer_interests": {"Type": "String.Array", "Value": "[\"rugby\", \"baseball\"]"}
```

E corrisponde anche al seguente corpo del messaggio (poiché contiene un valore che non è `rugby` né `tennis`):

```
{
   "customer_interests": ["rugby", "baseball"]
}
```

Tuttavia, non corrisponde ai seguenti attributi del messaggio:

```
"customer_interests": {"Type": "String", "Value": "rugby"}
```

```
"customer_interests": {"Type": "String.Array", "Value": "[\"rugby\"]"}
```

Né corrisponde al seguente corpo del messaggio:

```
{
   "customer_interests": ["rugby"]
}
```

**Utilizzo di un prefisso con `anything-but`**

Per la corrispondenza di stringa, puoi anche utilizzare un prefisso con operatore `anything-but`. Ad esempio, la proprietà della policy seguente nega il prefisso `order-`:

```
"event":[{"anything-but": {"prefix": "order-"}}]
```

Corrisponde a uno dei seguenti attributi:

```
"event": {"Type": "String", "Value": "data-entry"}
```

```
"event": {"Type": "String", "Value": "order_number"}
```

Corrisponde anche a uno dei seguenti corpi dei messaggi:

```
{
   "event": "data-entry"
}
```

```
{
   "event": "order_number"
}
```

Tuttavia, non corrisponde al seguente attributo di messaggio:

```
"event": {"Type": "String", "Value": "order-cancelled"}
```

Né corrisponde al seguente corpo del messaggio:

```
{
   "event": "order-cancelled"
}
```

**tutt'altro che jolly**

La seguente proprietà della policy nega il carattere jolly: `*ball`

```
"customer_interests" : [{ "anything-but": { "wildcard": "*ball" }}]
```

Corrisponde ai seguenti attributi:

```
{"customer_interests": ["hockey", "rugby", "soccer] }
```

Tuttavia, non corrisponde al seguente attributo del messaggio:

```
{"customer_interests": ["baseball", "basketball"] }
```

**tutto tranne il suffisso** 

La seguente proprietà politica nega il `-ball`

 suffisso:

```
"customer_interests": [ { "anything-but": { "suffix": "ball" } } ]
```

Corrisponde ai seguenti attributi:

```
{"customer_interests": ["hockey", "rugby", "soccer] }
```

Tuttavia, non corrisponde al seguente attributo del messaggio:

```
 {"customer_interests": ["baseball", "basketball"] }
```

## Equals-ignore-case abbinamento
<a name="string-equals-ignore"></a>

Quando una proprietà della policy include la parola chiave `equals-ignore-case`, verrà effettuata una corrispondenza che ignora le maiuscole/minuscole in qualsiasi valore di attributo dei messaggi o di proprietà del corpo.

Esaminiamo la seguente proprietà della policy:

```
"customer_interests": [{"equals-ignore-case": "tennis"}]
```

Corrisponde a uno dei seguenti attributi di messaggio:

```
"customer_interests": {"Type": "String", "Value": "TENNIS"}
```

```
"customer_interests": {"Type": "String", "Value": "Tennis"}
```

Corrisponde anche a uno dei seguenti corpi dei messaggi:

```
{
    "customer_interests": "TENNIS"
}
```

```
{
    "customer_interests": "teNnis"
{
```

## Corrispondenza in base all'indirizzo IP
<a name="string-address-matching"></a>

Puoi utilizzare l'operatore `cidr` per verificare se un messaggio in arrivo proviene da un indirizzo IP o da una subnet specifica. 

Esaminiamo la seguente proprietà della policy:

```
"source_ip":[{"cidr": "10.0.0.0/24"}]
```

Corrisponde a uno dei seguenti attributi di messaggio:

```
"source_ip": {"Type": "String", "Value": "10.0.0.0"}
```

```
"source_ip": {"Type": "String", "Value": "10.0.0.255"}
```

Corrisponde anche a uno dei seguenti corpi dei messaggi:

```
{
   "source_ip": "10.0.0.0"
}
```

```
{
   "source_ip": "10.0.0.255"
}
```

Tuttavia, non corrisponde al seguente attributo di messaggio:

```
"source_ip": {"Type": "String", "Value": "10.1.1.0"}
```

Né corrisponde al seguente corpo del messaggio:

```
{
   "source_ip": "10.1.1.0"
}
```

## Corrispondenza in base al prefisso
<a name="string-prefix-matching"></a>

Quando una proprietà della policy include la parola chiave `prefix`, corrisponde a qualsiasi valore di proprietà del messaggio che inizi con i caratteri specificati.

Esaminiamo la seguente proprietà della policy:

```
"customer_interests": [{"prefix": "bas"}]
```

Corrisponde a uno dei seguenti attributi di messaggio:

```
"customer_interests": {"Type": "String", "Value": "baseball"}
```

```
"customer_interests": {"Type": "String", "Value": "basketball"}
```

Corrisponde anche a uno dei seguenti corpi dei messaggi:

```
{
   "customer_interests": "baseball"
}
```

```
{
   "customer_interests": "basketball"
}
```

Tuttavia, non corrisponde al seguente attributo di messaggio:

```
"customer_interests": {"Type": "String", "Value": "rugby"}
```

Né corrisponde al seguente corpo del messaggio:

```
{
   "customer_interests": "rugby"
}
```

## Corrispondenza dei suffissi
<a name="string-suffix-matching"></a>

Quando una proprietà della policy include la parola chiave `suffix`, mette in corrispondenza qualsiasi valore di attributo dei messaggio o di proprietà del corpo che inizi con i caratteri specificati.

Esaminiamo la seguente proprietà della policy:

```
"customer_interests": [{"suffix": "ball"}]
```

Corrisponde a uno dei seguenti attributi di messaggio:

```
"customer_interests": {"Type": "String", "Value": "baseball"}
```

```
"customer_interests": {"Type": "String", "Value": "basketball"}
```

Corrisponde anche a uno dei seguenti corpi dei messaggi:

```
{
    "customer_interests": "baseball"
}
```

```
{
    "customer_interests": "basketball"
}
```

Tuttavia, non corrisponde al seguente attributo di messaggio:

```
"customer_interests": {"Type": "String", "Value": "rugby"}
```

Né corrisponde al seguente corpo del messaggio:

```
{
    "customer_interests": "rugby"
}
```

## Carattere jolly
<a name="string-value-wildcard"></a>

 È possibile utilizzare il carattere jolly (\$1) per la corrispondenza con valori di stringa in modelli di eventi. 

La seguente politica utilizza il carattere jolly (\$1):

```
"customer_interests": [ { "wildcard": "*ball" } ]
```

Corrisponde ai seguenti attributi:

```
{"customer_interests": ["baseball", "basketball"] }
```