<?php
$input = 'S1G5AB'; // given this
$store = '5I6GAB'; // actually this
$regex = array_map('trim', str_split($input));
/*
$regex = implode('', array_map(
function ($char) {
echo $char;
return $char;
static $map = ['S'=>'[S5]','5'=>'[S5]','1'=>'[1I]','I'=>'[1I]','G'=>'[6G]','6'=>'[6G]'];
return array_key_exists($char, $map) ? $map[$char] : $char;
}.
[ 'a', 'b' ] // str_split($input)
));
*/
var_dump($regex);
echo $regex . PHP_EOL;
echo (0 < preg_match("/$regex/", $store) ? 'Match' : 'No match');
preferences:
44.41 ms | 402 KiB | 5 Q