559x
005435
2024-02-27

Revit 或 Tekla 中的材料或截面转换不正确

在转换表中使用正则表达式时,我在 Tekla/Revit 中得到不正确的转换。


回复:

使用正则表达式可以一次转换多个对象,例如整个 IPE 截面系列。

示例

将例如 Tekla 中的PIPE6STD转换为 圆管标准6'" | 欧洲规范 19-57; ... | SZS in RFEM 6 soll auch für alle anderen Querschnitte der IPE-Profilreihe funktionieren.

Um eine Konvertierung für die ganze IPE-Profilreihe zu erstellen, wird der reguläre Ausdruck wie folgt aufgebaut:

Konvertierung von Tekla nach RFEM 6 Tekla RFEM 6
regulärer Ausdruck IPE(\d+) IPE $1 | Euronorm 19-57; ... | SZS
Querschnittsname IPE120 Pipe Std. 6 | SZS
Querschnittsname IPE300 Pipe Std. 8 | SZS

可以对表达式(\d+)输入任意小数。 (IPE200, IPE300,...)

表达式$1指代输入的十进制数。 Im folgendem Bild wurde der reguläre Ausdruck in der Tekla Konvertierungstabelle ergänzt.

Werden zwei Zahlen verwendet, so bezieht man sich mit dem Ausdruck $1 auf die erste Zahl und mit $2 auf die zweite Zahl. In der folgenden Tabelle wird dies am Beispiel einer Materialkonvertierung gezeigt.

Konvertierung von Tekla nach RFEM 6 Tekla RFEM 6
regulärer Ausdruck C(\d+)/(\d+) C$1/$2 | EN 1992-1-1:2004/A1:2014
Materialname C20/25 C20/25 | EN 1992-1-1:2004/A1:2014
Materialname C30/37 C30/37 | EN 1992-1-1:2004/A1:2014

Nachfolgend sollen mögliche Probleme bei der Definition von regulären Ausdrücken dargestellt und erläutert werden.

Der Profilname 400*400 wird nicht mit dem Ausdruck (\d+)*(\d+) konvertiert.

Das Sternchen * hat eine spezielle Bedeutung in regulären Ausdrücken und wird deswegen nicht als einfaches Zeichen interpretiert. Um das Sternchen als einzelnes Zeichen in einem regulären Ausdruck zu verwenden, kann es mit einem Backslash \ geschrieben werden, um seine spezielle Bedeutung aufzuheben.

Konvertierung von Tekla nach RFEM 6 Tekla RFEM 6
regulärer Ausdruck (\d+)\*(\d+) R_M1 $2/$1
Querschnittsname 400*400 R_M1 400/400
Querschnittsname 150*200 R_M1 150/200

Der Profilname RHS200*100*5 wird nicht mit dem Ausdruck RHS(\d+)\*(\d+)\*(\d+) konvertiert.

Werden mehrere ähnliche reguläre Ausdrücke verwendet, kann es dazu führen, dass der falsche reguläre Ausdruck angewandt wird (Beispiel im Bild).

Mit einem Hochzeichen ^ kann festgelegt werden, dass ein regulärer Ausdruck nur dann verwendet wird, wenn er mit dem Anfang des Material- oder Querschnittsnamen übereinstimmt. Der Ausdruck ^(\d+)\*(\d+) ist somit für den RHS-Querschnitt nicht mehr gültig, da der RHS-Querschnittsname nicht mit einer Zahl beginnt (wie z. B. 400x400).

Konvertierung von Tekla nach RFEM 6 Tekla RFEM 6
regulärer Ausdruck ^(\d+)\*(\d+) R_M1 $2/$1
Querschnittsname 400*400 R_M1 400/400
Querschnittsname 300*300 R_M1 300/300
regulärer Ausdruck RHS(\d+)\*(\d+)\*(\d+) RRO $1x$2x$3 | EN 10219-2 | ALUKÖNIGSTAHL
Querschnittsname RHS200*100*5 RRO 200x100x5 | EN 10219-2 | ALUKÖNIGSTAHL
Querschnittsname RHS180*140*8 RRO 180x140x8 | EN 10219-2 | ALUKÖNIGSTAHL

Wie kann ich ein Material/Querschnitt aus RFEM 6 unabhängig von der Normbezeichnung konvertieren.

Im Vergleich zu RFEM 6 vergeben Revit und Tekla ihren Material- und Querschnittsnamen unabhängig von Normen. Damit z. B. ein HEA 300 Querschnitt in RFEM 6 aus verschiedenen Normen in einen HEA 300 ohne Normzuweisung in Revit bzw. Tekla umgewandelt wird, kann mit dem regulären Ausdruck .*$ die Normbezeichnung im Namen ignoriert werden.

Konvertierung von RFEM 6 nach Tekla RFEM 6 Tekla
regulärer Ausdruck HEA (\d+).*$ HEA$1
Querschnittsname HEA 300 | DIN 1025-3:1994-03 | Ferona HEA300
Querschnittsname HEA 300 | Euronorm 53-62; ... | SZS HEA300
Querschnittsname HEA 300 | GB/T 11263-2017 | -- HEA300

Die regulären Ausdrücke für gleichschenklige und ungleichschenklige L-Profile funktionieren nicht gleichzeitig.

Werden ähnliche reguläre Ausdrücke verwendet, kann es dazu führen, dass immer nur der erste Ausdruck in der Tabelle ausgelesen wird (Beispiel im Bild). Für das ungleichschenklige L-Profil (rot) wird fälschlicherweise der reguläre Ausdruck des gleichschenkligen L-Profils (gelb) genutzt, da dieser von Anfang bis Ende genau gleich aufgebaut ist.

Um solche Ausdrücke voneinander zu unterscheiden, muss der fälschlicherweise verwendete Ausdruck mit einem ^ beginnen und mit einem $ enden.
Dadurch wird festgelegt, dass der reguläre Ausdruck nur verwendet wird wenn der Profilname von Anfang bis Ende exakt diesem Muster entspricht. In der nachfolgenden Tabelle wird dies am Beispiel gezeigt:

Konvertierung von Tekla nach RFEM 6 Tekla RFEM 6
regulärer Ausdruck ^L(\d+)\*(\d+)$ L $1x$1x$2 | DIN EN 10056-1:1998-10 | --
Querschnittsname L40*4 L 40x40x4 | | DIN EN 10056-1:1998-10 | --
regulärer Ausdruck L(\d+)\*(\d+)\*(\d+) L $1x$2x$3 | EN 10056-1:2017 | ArcelorMittal (2018)
Querschnittsname L100*65*10 L 100x65x10 | EN 10056-1:2017 | ArcelorMittal (2018)

In RFEM werden gleichschenklige und ungleichschenklige L-Profile mit drei Werten im Querschnittsnamen definiert. Tekla verwendet für gleichschenklige Profile nur zwei Werte für den Querschnittsnamen. Wie kann ich beide Fälle gleichzeitig berücksichtigen?

Zunächst kann für die ungleichschenkligen Profile ein regulärer Ausdruck mit drei Werten erzeugt werden:

Konvertierung von RFEM 6 nach Tekla RFEM 6 Tekla
regulärer Ausdruck L (\d+)x(\d+)x(\d+).*$ L$1*$2*$3
Querschnittsname L 100x75x8 L100*75*8

Für die gleichschenkligen Profile wird der reguläre Ausdruck wie folgt definiert:

Konvertierung von RFEM 6 nach Tekla RFEM 6 Tekla
regulärer Ausdruck L (\d+)x(\1)x(\d+).*$ L$1*$3
Querschnittsname L 100x100x8 L100*8

(\d+) erfasst die erste Zahl.

(\1) überprüft ob die zweite Zahl mit der ersten identisch ist. (Wenn ja, dann wird dieser reguläre Ausdruck verwendet)

(\d+) erfasst die dritte Zahl.

Wie werden Querschnittsnamen mit Dezimalzahlen konvertiert?

In RFEM gibt es Querschnittsreihen, in denen die Abmessungen der Querschnitte als Dezimalzahl im Querschnittsnamen enthalten sind (z.B. CHS-Hohlprofile). Für das nachfolgende Beispiel sollen folgende Querschnitte mit einem Ausdruck konvertiert werden:

  • CHS 25x2 | EN 10219-2 | Condesa (Querschnittsnamen mit zwei ganzen Zahlen)
  • CHS 26.9x2 | EN 10219-2 | Condesa (Querschnittsnamen mit Dezimalzahl und ganzer Zahl)
  • CHS 32x2.9 | EN 10219-2 | Condesa (Querschnittsnamen mit ganzer Zahl und Dezimalzahl)
  • CHS 37.5x2.9 | EN 10219-2 | Condesa (Querschnittsnamen mit zwei Dezimalzahlen)

Jede Zahl kann somit optional eine Kommastelle besitzen. Der reguläre Ausdruck für diese Regel wird wie folgt aufgebaut:

CHS (\d*\.?\d*)x(\d*\.?\d*).*$

\d* erfasst keine oder eine Zahl.

\.? erfasst optional den Dezimalpunkt (ganze Zahlen ohne Dezimalpunkt werden somit berücksichtigt)

\d*erfasst keine oder eine Zahl nach dem Dezimalpunkt.

.*$ die Normbezeichnung im Namen wird ignoriert.

Konvertierung von RFEM 6 nach Tekla RFEM 6 Tekla
regulärer Ausdruck CHS (\d*\.?\d*)x(\d*\.?\d*).*$ RO$1*$2
Querschnittsname CHS 25x2 | EN 10219-2 | Condesa RO25*2
Querschnittsname CHS 26.9x2 | EN 10219-2 | Condesa RO26.9*2
Querschnittsname CHS 32x2.9 | EN 10219-2 | Condesa RO32*2.9
Querschnittsname CHS 37.5x2.9 | EN 10219-2 | Condesa RO37.5*2.9


作者

Sivolgin 先生负责接口领域的产品开发。



;