14.3. Espressioni regolari

Le espressioni regolari possono essere utilizzate per indirizzare determinati componenti del valore di una colonna utilizzando combinazioni di caratteri.

Esempio:

I valori delle colonne della variabile numero standard sono costituiti da stringhe di caratteri complessi (ad esempio "xyz DIN 174jdfjd"). Le espressioni per il numero standard nelle tabelle di PARTdataManager ("DIN 174") sono "nascoste" all'interno di queste stringhe di caratteri, in diversi punti. Per poter confrontare i valori delle colonne del file di testo e della tabella, è necessario "estrarre" le relative espressioni dalle stringhe di caratteri.

Soluzione:

Espressione "DIN [0-9] * " .

Questo filtra la seguente stringa: "DIN", seguita da uno spazio e da un numero. Il numero è composto dalle cifre da 0 a 9, che possono comparire tutte le volte che si vuole in questo numero.

Caratteri [Symbol] utilizzati in relazione alle espressioni regolari:

Caratteri nelle espressioni regolari

Spiegazione [Description]

* (stella)

Il carattere o la stringa di caratteri a sinistra dell'asterisco può comparire tutte le volte che è necessario o non comparire affatto.

+ (Più)

Il carattere o la stringa di caratteri a sinistra del segno più può comparire un numero qualsiasi di volte, ma almeno una volta.

? (punto interrogativo)

Il carattere o la stringa di caratteri a sinistra del punto interrogativo può comparire una volta o non comparire affatto.

. (punto)

Il punto indica qualsiasi carattere che ricorre una sola volta.

[^] (cofano con parentesi)

I caratteri all'interno delle parentesi e dietro il cofano sono esclusi.

^ (cap senza parentesi)

I caratteri preceduti da un carattere maiuscolo devono trovarsi all'inizio di una stringa di caratteri.

$ (segno del dollaro)

I caratteri seguiti da un segno di dollaro devono trovarsi alla fine di una stringa di caratteri.

\( backslash)

Una barra rovesciata davanti annulla la funzione dei caratteri nelle espressioni regolari.

Possibili espressioni regolari [regular expressions]:

La base è la stringa di caratteri ABCXYZDEF

Espressione

Spiegazione [Description]

Esempio [Example]

XYZ

Legge X e Z e l'espressione definita tra X e Z .

ABC XYZ DEF

X . Z

Legge X e Z , nonché qualsiasi carattere compreso tra X e Z.

ABC XAZ DEF

ABC XeZ DEF

ABC X4Z DEF

ecc.

X .* Z

Legge X e Z , nonché qualsiasi carattere (che si verifica un numero qualsiasi di volte) o nessun carattere tra X e Z .

ABC XZ DEF

ABC XAZ DEF

ABC XApZ DEF

ecc.

X .+ Z

Legge X e Z , nonché qualsiasi carattere (un numero qualsiasi di volte, ma almeno una) tra X e Z .

ABC XAZ DEF

ABC XrGZ DEF

ecc.

X .? Z

Legge X e Z, nonché qualsiasi carattere o nessun carattere tra X e Z.

ABC XZ DEF

ABC XAZ DEF

ABC X8Z DEF

ecc.

XA + Z

Legge X e Z , nonché A (un numero qualsiasi di volte, ma almeno una) tra X e Z .

ABC XAZ DEF

ABC XAAZ DEF

ABC XAAAZ DEF

ecc.

XA ? Z

Legge X e Z , e A una volta o meno tra X e Z .

ABC XZ DEF

ABC XAZ DEF

X[AB] * Z

Legge X e Z, così come qualsiasi combinazione diAe B o nessun carattere tra X e Z.

ABC XZ DEF

ABC XAZ DEF

ABC XBZ DEF

ABC XABZ DEF

ABC XBAZ DEF

ABC XAAZ DEF

ABC XBBZ DEF

ABC XABAZ DEF

ABC XBBAABAZ DEF

ecc.

X[ ^ AB ]Z

Legge X e Z, nonché qualsiasi combinazione di caratteri tra X e Z, ad eccezione dei caratteri A e B .

ABC X AB Z DEF

Espressione

Spiegazione [Description]

Esempio [Example]

X[A-C]Z

Legge X e Z e A, B o C tra X e Z.

ABC XAZ DEF

ABC XBZ DEF

ABC XCZ DEF

X[0-9] * Z

Legge X e Z, nonché qualsiasi combinazione di numeri o nessun carattere tra X e Z.

ABC XZ DEF

ABC X0Z DEF

ABC X1Z DEF

ABC X6372Z DEF

ecc.

X[A-Z][a-z] * Z

Legge X e Z , così come la stringa, iniziando con una lettera maiuscola e continuando con lettere minuscole (che si ripetono un numero qualsiasi di volte) o nessun carattere tra X e Z .

ABC XZ DEF

ABC XAZ DEF

ABC XAaZ DEF

ABC XAgsagZ DEF

ABC XBZ DEF

ecc.

ABC

Legge l'espressione definita se si trova all'inizio della stringa.

ABC XYZDEF

Non per:

XABCZDEF

ABC $

Legge l'espressione definita se si trova alla fine della stringa di caratteri.

XYZDEF ABC

Non per:

ABCXYZDEF

X \. Z

annulla la funzione del punto all'interno dell'espressione regolare, in modo che un punto ( $ , ^ , ecc. e anche il backslash stesso!) possa essere letto anche da una stringa di caratteri.

ABCX . ZDEF