I can’t say why the regex is giving you the array output, but I can show you a example how I resolved that to normalize the numbers to the IT Format.
I split them to different extensions and it’s not so easy to read, but maybe It helps you to understand.
<extension name="cid_number_cleanup_italy" continue="true" inline="true">
<condition field="caller_id_number" expression="^(?:\+39|0039)(\d+)$">
<action application="set" data="effective_caller_id_number=$1" inline="true"/>
</condition>
</extension>
<extension name="cid_number_cleanup_other" continue="true" inline="true">
<condition field="${effective_caller_id_number}" expression="^$"/>
<condition field="caller_id_number" expression="^(?:\+)(\d+)$">
<action application="set" data="effective_caller_id_number=00$1"/>
</condition>
</extension>
<extension name="cid_name_cleanup" continue="true" inline="true">
<condition field="${effective_caller_id_number}" expression="^$" inline="true"/>
<condition field="caller_id_name" expression="^(?:\+)(\d+)$">
<action application="set" data="effective_caller_id_name=$1" inline="true"/>
</condition>
</extension>
<extension name="cid_lookup-1" continue="true" inline="true">
<condition field="${module_exists(mod_cidlookup)}" expression="true"/>
<condition field="caller_id_name" expression="(\d+)$"/>
<condition field="${effective_caller_id_number}" expression="^$" inline="true">
<anti-action application="cidlookup" data="${effective_caller_id_number}"/>
</condition>
<condition field="caller_id_number" expression="(\d+)$">
<action application="cidlookup" data="$1"/>
<anti-action application="cidlookup" data="${effective_caller_id_number}"/>
</condition>
</extension>
<extension name="verify-caller-name" continue="true" inline="true">
<condition field="${caller_id_name}" expression="UNKNOWN">
<action application="log" data="INFO callee_id_name is UNKNOWN reset to caller_id_number '${caller_id_number}'"/>
<action application="set" data="effective_caller_id_name=${caller_id_number}"/>
<anti-action application="log" data="INFO caller_id_name is known as '${caller_id_name}'"/>
</condition>
</extension>