- json_decode: documentation ( source)
- preg_match: documentation ( source)
<?php
$json = '{ "nickname": "#FF0000Nick#00FF00name" }';
$data = json_decode($json, true);
$garbledData = $data['nickname'];
// (?<firstHex>\#[A-F0-9]{6}) match and name the match 'firstHex' - look for a hash, then letters a-f or numbers 0-9, with a length of 6 characters
// (?<name>.+) match and name the match 'name' - look for absolutely any characters, any amount
// (?<secondHex>\#[A-F0-9]{6}) match and name the match 'secondHex' - look for a hash, then letters a-f or numbers 0-9, with a length of 6 characters
$regex = '/(?<firstHex>\#[A-F0-9]{6})(?<name>.+)(?<secondHex>\#[A-F0-9]{6})/';
preg_match($regex, $garbledData, $matches);
$firstHex = $matches['firstHex'];
$secondHex = $matches['secondHex'];
$name = $matches['name'];
echo $firstHex . "\n";
echo $secondHex . "\n";
echo $name . "\n";