> For the complete documentation index, see [llms.txt](https://manual-1-3.karamba3d.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://manual-1-3.karamba3d.com/3-in-depth-component-reference/3.1-model/3.1.15-select-beam.md).

# 3.1.15: Select Element

All structural elements can be given identifiers, i.e. names. Names are case sensitive and need to start with a letter or underscore. After the first initial letter numbers and letters may follow. Names need not be unique: Two elements can have the same name without Karamba3D complaining. Each element has a default identifier: its index. This is the reason why it is not allowed to have an integer number as an element identifier. Fig. 3.1.15.1 shows how a list of elements can be split into two data trees using their identifiers. The **“Select Beam”**-component expects a list of elements in **“Elems”** as well as a list of identifiers or regular expressions in **“Id”**. Regular expressions need to be prefixed by a “&”. They represent a very mighty selection tool. In fig. 3.1.15.1 one can see three use-cases:

* “&.\[1-2]”: a “.” matches any character; “\[1-2]” matches one character in the range of “1” to “2”. This is equivalent to “\[12]”.
* “\&b.”: matches any identifier that starts with “b” followed by an arbitrary character.
* “&.\[13]”: matches any identifier that starts with an arbitrary character followed either by “1” or “3”.

![ Fig. 3.1.15.1: Elements can be selected by using their identifiers](/files/-M9XuW2Cq5HMqckb3O5z)

There are two output-plugs on the **“Select Beam”**-component: **“SElem”** renders the selected elements which match the selection criteria, **“RElem”** returns the rest. The entries of the **“SElem”** and **“RElem”** output data remember their spot in the original list of elements. Joining them results in the original order of elements.
