14.10.2017, 22:27
Name says.
Output:
Expected output:
(Without the vN3: tag)
PHP код:
// vN = variable name
#define extract(%1); vN1(%1[])
// Remove all after [
#define vN1(%1[%9) vN2(%1<>)
// Remove all after <
#define vN2(%1<%9) vN3:vN4(%1)
// If has any tag
#define vN3:vN4(%9:%1) %1
// Remove the funcion
#define vN4(%1) %1
extract(norm_0);
extract(norm_1[]);
extract(norm_2[][]);
extract(norm_3[][][]);
extract(norm_4[][][][]);
extract(tag:tagged_norm_0);
extract(tag:tagged_norm_1[]);
extract(tag:tagged_norm_2[][]);
extract(tag:tagged_norm_3[][][]);
extract(tag:tagged_norm_4[][][][]);
extract(special_0<abc>);
extract(special_1[]<abc>);
extract(special_2[][]<abc>);
extract(special_3[][][]<abc>);
extract(tag:tagged_special_0<abc>);
extract(tag:tagged_special_1[]<abc>);
extract(tag:tagged_special_2[][]<abc>);
extract(tag:tagged_special_3[][][]<abc>);
Код:
vN3:norm_0 vN3:norm_1 vN3:norm_2 vN3:norm_3 vN3:norm_4 tagged_norm_0 tagged_norm_1 tagged_norm_2 tagged_norm_3 tagged_norm_4 vN3:special_0 vN3:special_1 vN3:special_2 vN3:special_3 tagged_special_0 tagged_special_1 tagged_special_2 tagged_special_3
Код:
norm_0 norm_1 norm_2 norm_3 norm_4 tagged_norm_0 tagged_norm_1 tagged_norm_2 tagged_norm_3 tagged_norm_4 special_0 special_1 special_2 special_3 tagged_special_0 tagged_special_1 tagged_special_2 tagged_special_3