Grazie all'uso delle espressioni regolari è possibile convertire più oggetti – ad esempio un'intera serie di profili IPE – con un solo inserimento.
Esempio
La conversione ad esempio di IPE120 in Tekla in IPE 120 | Euronorm 19-57; ... | SZS in RFEM 6 deve funzionare anche per tutte le altre sezioni della serie di profili IPE.
Per creare una conversione per l'intera serie di profili IPE, l'espressione regolare viene strutturata come segue:
| Conversione da Tekla a RFEM 6 | Tekla | RFEM 6 |
| espressione regolare | IPE(\d+) | IPE $1 | Euronorm 19-57; ... | SZS |
| nome sezione | IPE120 | IPE 120 | Euronorm 19-57; ... | SZS |
| nome sezione | IPE300 | IPE 300 | Euronorm 19-57; ... | SZS |
Al posto dell'espressione (\d+) può essere inserito qualsiasi numero intero (IPE200, IPE300,...).
Con l'espressione $1 si fa riferimento al numero inserito. Nell'immagine seguente è stata aggiunta l'espressione regolare nella tabella di conversione di Tekla.
Se vengono utilizzati due numeri, con l'espressione $1 si fa riferimento al primo numero e con $2 al secondo. Nella tabella seguente questo viene mostrato con l'esempio di una conversione di materiali.
| Conversione da Tekla a RFEM 6 | Tekla | RFEM 6 |
| espressione regolare | C(\d+)/(\d+) | C$1/$2 | EN 1992-1-1:2004/A1:2014 |
| nome materiale | C20/25 | C20/25 | EN 1992-1-1:2004/A1:2014 |
| nome materiale | C30/37 | C30/37 | EN 1992-1-1:2004/A1:2014 |
Di seguito vengono presentati e spiegati i possibili problemi nella definizione delle espressioni regolari.
Il nome del profilo 400*400 non viene convertito con l'espressione (\d+)*(\d+).
L'asterisco * ha un significato speciale nelle espressioni regolari e per questo non viene interpretato come semplice carattere. Per utilizzare l'asterisco come singolo carattere in un'espressione regolare, è possibile scriverlo con una barra rovesciata \ per annullarne il significato speciale.
| Conversione da Tekla a RFEM 6 | Tekla | RFEM 6 |
| espressione regolare | (\d+)\*(\d+) | R_M1 $2/$1 |
| nome sezione | 400*400 | R_M1 400/400 |
| nome sezione | 150*200 | R_M1 150/200 |
Il nome del profilo RHS200*100*5 non viene convertito con l'espressione RHS(\d+)\*(\d+)\*(\d+).
Se vengono utilizzate più espressioni regolari simili, può accadere che venga applicata l'espressione regolare errata (esempio nell'immagine).
Con un accento circonflesso ^ è possibile definire che un'espressione regolare venga utilizzata solo se corrisponde all'inizio del nome del materiale o della sezione. L'espressione ^(\d+)\*(\d+) non è quindi più valida per la sezione RHS, poiché il nome della sezione RHS non inizia con un numero (ad esempio 400x400).
| Conversione da Tekla a RFEM 6 | Tekla | RFEM 6 |
| espressione regolare | ^(\d+)\*(\d+) | R_M1 $2/$1 |
| nome sezione | 400*400 | R_M1 400/400 |
| nome sezione | 300*300 | R_M1 300/300 |
| espressione regolare | RHS(\d+)\*(\d+)\*(\d+) | RRO $1x$2x$3 | EN 10219-2 | ALUKÖNIGSTAHL |
| nome sezione | RHS200*100*5 | RRO 200x100x5 | EN 10219-2 | ALUKÖNIGSTAHL |
| nome sezione | RHS180*140*8 | RRO 180x140x8 | EN 10219-2 | ALUKÖNIGSTAHL |
Come posso convertire un materiale/sezione da RFEM 6 indipendentemente dalla designazione della norma?
Rispetto a RFEM 6, Revit e Tekla assegnano i nomi dei materiali e delle sezioni indipendentemente dalle norme. affinché ad esempio una sezione HEA 300 in RFEM 6 proveniente da diverse norme venga convertita in un HEA 300 senza assegnazione di norma in Revit o Tekla, con l'espressione regolare .*$ è possibile ignorare la designazione della norma nel nome.
| Conversione da RFEM 6 a Tekla | RFEM 6 | Tekla |
| espressione regolare | HEA (\d+).*$ | HEA$1 |
| nome sezione | HEA 300 | DIN 1025-3:1994-03 | Ferona | HEA300 |
| nome sezione | HEA 300 | Euronorm 53-62; ... | SZS | HEA300 |
| nome sezione | HEA 300 | GB/T 11263-2017 | -- | HEA300 |
Le espressioni regolari per i profili L a lati uguali e a lati disuguali non funzionano contemporaneamente.
Se vengono utilizzate espressioni regolari simili, può accadere che venga letta sempre solo la prima espressione nella tabella (esempio nell'immagine). Per il profilo L a lati disuguali (rosso) viene erroneamente utilizzata l'espressione regolare del profilo L a lati uguali (giallo), poiché questa è strutturata dall'inizio alla fine in modo identico.
Per distinguere tali espressioni l'una dall'altra, l'espressione erroneamente utilizzata deve iniziare con un ^ e terminare con un $. In questo modo viene definito che l'espressione regolare viene utilizzata solo se il nome del profilo corrisponde esattamente a questo schema dall'inizio alla fine. Nella tabella seguente questo viene mostrato con l'esempio:
| Conversione da Tekla a RFEM 6 | Tekla | RFEM 6 |
| espressione regolare | ^L(\d+)\*(\d+)$ | L $1x$1x$2 | DIN EN 10056-1:1998-10 | -- |
| nome sezione | L40*4 | L 40x40x4 | | DIN EN 10056-1:1998-10 | -- |
| espressione regolare | L(\d+)\*(\d+)\*(\d+) | L $1x$2x$3 | EN 10056-1:2017 | ArcelorMittal (2018) |
| nome sezione | L100*65*10 | L 100x65x10 | EN 10056-1:2017 | ArcelorMittal (2018) |
In RFEM i profili L a lati uguali e a lati disuguali vengono definiti con tre valori nel nome della sezione. Tekla utilizza per i profili a lati uguali solo due valori per il nome della sezione. Come posso considerare entrambi i casi contemporaneamente?
Innanzitutto, per i profili a lati disuguali può essere creata un'espressione regolare con tre valori:
| Conversione da RFEM 6 a Tekla | RFEM 6 | Tekla |
| espressione regolare | L (\d+)x(\d+)x(\d+).*$ | L$1*$2*$3 |
| nome sezione | L 100x75x8 | L100*75*8 |
Per i profili a lati uguali, l'espressione regolare viene definita come segue:
| Conversione da RFEM 6 a Tekla | RFEM 6 | Tekla |
| espressione regolare | L (\d+)x(\1)x(\d+).*$ | L$1*$3 |
| nome sezione | L 100x100x8 | L100*8 |
(\d+) acquisisce il primo numero.
(\1) controlla se il secondo numero è identico al primo. (Se sì, viene utilizzata questa espressione regolare)
(\d+) acquisisce il terzo numero.
Come vengono convertiti i nomi delle sezioni con numeri decimali?
In RFEM esistono serie di sezioni in cui le dimensioni delle sezioni sono contenute come numeri decimali nel nome della sezione (ad esempio sezioni cave CHS). Per l'esempio seguente, le sezioni seguenti devono essere convertite con un'espressione:
- CHS 25x2 | EN 10219-2 | Condesa (nomi sezione con due numeri interi)
- CHS 26.9x2 | EN 10219-2 | Condesa (nomi sezione con numero decimale e numero intero)
- CHS 32x2.9 | EN 10219-2 | Condesa (nomi sezione con numero intero e numero decimale)
- CHS 37.5x2.9 | EN 10219-2 | Condesa (nomi sezione con due numeri decimali)
Ogni numero può quindi contenere facoltativamente una virgola decimale. L'espressione regolare per questa regola viene strutturata come segue:
CHS (\d*\.?\d*)x(\d*\.?\d*).*$
\d* non acquisisce alcun numero o un numero.
\.? acquisisce facoltativamente il punto decimale (i numeri interi senza punto decimale vengono così considerati)
\d* non acquisisce alcun numero o un numero dopo il punto decimale.
.*$ la designazione della norma nel nome viene ignorata.
| Conversione da RFEM 6 a Tekla | RFEM 6 | Tekla |
| espressione regolare | CHS (\d*\.?\d*)x(\d*\.?\d*).*$ | RO$1*$2 |
| nome sezione | CHS 25x2 | EN 10219-2 | Condesa | RO25*2 |
| nome sezione | CHS 26.9x2 | EN 10219-2 | Condesa | RO26.9*2 |
| nome sezione | CHS 32x2.9 | EN 10219-2 | Condesa | RO32*2.9 |
| nome sezione | CHS 37.5x2.9 | EN 10219-2 | Condesa | RO37.5*2.9 |
Perché la sezione KREIS_M1 500 non viene convertita?
Per alcune sezioni, la designazione per la conversione a causa dei WebService differisce dalla designazione mostrata in lingua tedesca. La conversione per KREIS_M1 500 deve essere definita come CIRCLE_M1 500. Lo stesso vale per le seguenti designazioni di sezioni:
- KREIS→CIRCLE
- RRO→RHS
- QRO→SHS
- Fune→Cable