RegexSplit attribute definition produces its values by applying a Java regular expression to each of the input attribute's values. For every input value that matches, the first match group is added as a new output value.
Schema Name and Location
xsi:type is defined in the
urn:mace:shibboleth:2.0:resolver namespace 3.3, the schema for which can be located at http://shibboleth.net/schema/idp/shibboleth-attribute-resolver.xsd
Prior to V3.3 supplied plugins were defined by a schema type in the
urn:mace:shibboleth:2.0:resolver:ad namespace, the schema for which is located at http://shibboleth.net/schema/idp/shibboleth-attribute-resolver-ad.xsd. This is still supported, but every element or type in the old namespace has an equivalently named (but not necessarily identical) version in the
urn:mace:shibboleth:2.0:resolver namespace. The use of the
urn:mace:shibboleth:2.0:resolver namespace also allows a relaxation of the ordering requirements of child elements to reduce strictness.
Any of the common attributes can be specified. In addition, the following attributes are defined:
|string||Y||Provides the regular expression to apply|
|boolean||false||Whether the match is case sensitive or not|
Any of the common child elements can be specified.
<AttributeDefinition id="exampleRegexp" xsi:type="RegexSplit" regex="Pre-(.+)-Post">
<InputDataConnector ref="myLDAP" attributeNames="uid" />
<AttributeEncoder xsi:type="SAML2String" name="http://example.org/example" friendlyName="regexp"/>
If this definition was supplied with an attribute with the input values "Fred", "Pre-And-Post", it would produce an output attribute with one value "And".