Puede utilizar expresiones regulares para convertir varios objetos, como una serie de secciones IPE completa, mediante una sola entrada.
Ejemplo
Conversión de, por ejemplo, PIPEE6STD en Tekla a Pipe Std. 6'" | AISC 16 | -- en RFEM 6 también debería funcionar para todas las demás secciones de la serie de secciones de tubo.
Para crear una conversión para toda la serie de secciones de tubo, la expresión regular se estructura de la siguiente manera:
Conversión de Tekla a RFEM 6 | Tekla | RFEM 6 | |
Expresión regular | PIPE(\d+)STD | Pipe Std. $1 |
|
Nombre de la sección | PIPE6STD | Pipe Std. 6 |
|
Nombre de la sección | PIPE8STD | Pipe Std. 8 |
|
Para la expresión (\d+), puede introducir cualquier número decimal. (Pipe Std. 6, Pipe Std. 8, …)
La expresión $1 se refiere al número decimal insertado. En la siguiente figura, se ha agregado la expresión regular a la tabla de conversión de Tekla.
Si se usan dos números decimales, la expresión $1 se refiere al primer número y $2 se refiere al segundo número. La siguiente tabla muestra esto.
Conversión de Tekla a RFEM 6 | Tekla | RFEM 6 |
Expresión regular | W(\d+)X(\d+) | W $1x$2 |
Nombre de la sección | W12X22 | W 12x22 |
Nombre de la sección | C30/37 | W 14x38 |
Este artículo muestra y explica posibles problemas al definir expresiones regulares.
El nombre de la sección 12*12 no se convierte con la expresión (\d+)*(\d+).
El asterisco * tiene un significado especial en las expresiones regulares y, por lo tanto, no se interpreta como un carácter simple. Para usar el asterisco como un carácter único en una expresión regular, puede escribirlo con una barra invertida \ para invalidar su significado especial.
Conversión de Tekla a RFEM 6 | Tekla | RFEM 6 |
Expresión regular | (\d+)\*(\d+) | R_M1 $2/$1 |
Nombre de la sección | 12*12 | R_M1 12/12 |
Nombre de la sección | 5*10 | R_M1 5/10 |
El nombre de la sección HSS12*8*3/8 no se convierte con la expresión HSS(\d+)\*(\d+)\*(\d+).
Si se usan varias expresiones regulares similares, esto puede dar como resultado el uso de una expresión regular incorrecta (consulte el ejemplo en la imagen).
Puede usar el superíndice ^ para especificar el uso de una expresión regular solo si es válida al principio del nombre del material o de la sección. Por lo tanto, la expresión ^(\d+)\*(\d+) ya no es válida para la sección RHS, porque este nombre de sección no comienza con un número (como 400x400).
Conversión de Tekla a RFEM 6 | Tekla | RFEM 6 |
Expresión regular | ^(\d+)\*(\d+) | R_M1 $2/$1 |
Nombre de la sección | 12*12 | R_M1 12/12 |
Nombre de la sección | 10*10 | R_M1 300/300 |
Expresión regular | Rect HSS(\d+)\*(\d+)\*(\d+) | Rect HSS $1x$2x$3 |
Nombre de la sección | Rect HSS7*3*0.313 | Rect HSS 7x3x0.313 |
Nombre de la sección | HSS4*2*0.250 | Rect HSS 4x2x0.250 |
¿Cómo puedo convertir el material/sección de RFEM 6 independientemente de la designación de la norma?
A diferencia de RFEM 6, Revit y Tekla asignan nombres de materiales y secciones independientemente de las normas. Por lo tanto, para convertir, por ejemplo, una sección HEA 300 en RFEM 6 en un HEA 300 sin referencia a la norma en Revit o Tekla, puede usar la expresión regular .*$ para ignorar la designación de la norma en el nombre.
Conversión de RFEM 6 a Tekla | RFEM 6 | Tekla | |
Expresión regular | HP\s(\d+)x(\d+).*$ | HP$1x$2 | |
Nombre de la sección | HP 8x36 AISC 16 | HP8X36 | |
Nombre de la sección | HP 8x36 AISC 15 |
|
HP8X36 |
Nombre de la sección | HP 8x36 AISC 14 | HP8X36 |
Las expresiones regulares para secciones en L de lados iguales y desiguales no funcionan simultáneamente.
Si se usan varias expresiones regulares similares, esto puede dar como resultado el uso de la primera expresión solo en la tabla (ver el ejemplo en la imagen). Para la sección en L de lados desiguales (rojo), la expresión regular de la sección en L de lados iguales (amarillo) se usa incorrectamente, porque está estructurada exactamente igual de principio a fin.
Para distinguir estas expresiones entre sí, la expresión utilizada incorrectamente debe comenzar con ^ y terminar con $.
Así, la expresión regular solo se usa si el nombre de la sección coincide exactamente con este patrón de principio a fin. En la siguiente tabla se muestra un ejemplo de esto:
Conversión de Tekla a RFEM 6 | Tekla | RFEM 6 | |||
Expresión regular | ^L(\d+)\*(\d+)$ | L $1x$1x$2 |
|
|
|
Nombre de la sección | L40*4 | L 40x40x4 |
|
|
|
Expresión regular | L(\d+)\*(\d+)\*(\d+) | L $1x$2x$3 |
|
|
|
Nombre de la sección | L100*65*10 | L 100x65x10 |
|
|
En RFEM, las secciones en L de lados iguales y desiguales se definen mediante tres valores en el nombre de la sección. Tekla solo usa dos valores para el nombre de la sección para las secciones iguales. ¿Cómo puedo considerar ambos casos al mismo tiempo?
Primero, puede crear un informe regular con tres valores para las secciones de lados desiguales:
Conversión de RFEM 6 a Tekla | RFEM 6 | Tekla |
Expresión regular | L (\d+)x(\d+)x(\d+).*$ | L$1*$2*$3 |
Nombre de la sección | L 100x75x8 | L100*75*8 |
La expresión regular para secciones de lados iguales se define como sigue:
Conversión de RFEM 6 a Tekla | RFEM 6 | Tekla |
Expresión regular | L (\d+)x(\1)x(\d+).*$ | L$1*$3 |
Nombre de la sección | L 100x100x8 | L100*8 |
(\d+) devuelve el primer número.
(\1) comprueba si el segundo número es el mismo que el primero. (Si es así, entonces se usa esta expresión regular)
(\d+) devuelve el tercer número.
¿Cómo se convierten los nombres de las secciones con números decimales?
En RFEM, hay series de secciones donde las dimensiones de las secciones están contenidas como un número decimal en el nombre de la sección (por ejemplo, secciones huecas circulares CHS). En el siguiente ejemplo, las siguientes secciones se van a convertir con una expresión:
- CHS 25x2 | EN 10219-2 | Condesa (nombres de secciones con dos enteros)
- CHS 26.9x2 | EN 10219-2 | Condesa (nombres de secciones con un número decimal y un número entero)
- CHS 32x2.9 | EN 10219-2 | Condesa (nombres de secciones con un número entero y un número decimal)
- CHS 37.5x2.9 | EN 10219-2 | Condesa (nombres de secciones con dos números decimales)
Por lo tanto, cada número puede tener opcionalmente un decimal. La expresión regular para esta regla está estructurada de la siguiente manera:
CHS (\d*\.?\d*)x(\d*\.?\d*).*$
\d* no devuelve ningún número o un número.
\.? opcionalmente devuelve la coma decimal (por lo tanto, se tienen en cuenta los números enteros sin una coma decimal)
\d* devuelve ningún número o un número después de la coma decimal.
.*$ Se ignorará la norma en el nombre.
Conversión de RFEM 6 a Tekla | RFEM 6 | Tekla | ||
Expresión regular | CHS (\d*\.?\d*)x(\d*\.?\d*).*$ | RO$1*$2 | ||
Nombre de la sección | CHS 25x2 |
|
|
RO25*2 |
Nombre de la sección | CHS 26.9x2 |
|
|
RO26.9*2 |
Nombre de la sección | CHS 32x2.9 |
|
|
RO32*2.9 |
Nombre de la sección | CHS 37.5x2.9 |
|
|
RO37.5*2.9 |