Pixel-Composer/scripts/string_function/string_function.gml

32 lines
688 B
Plaintext
Raw Normal View History

2022-12-21 02:30:23 +01:00
function string_to_array(str) {
var amo = string_length(str);
var arr = array_create(amo);
for( var i = 0; i < amo; i++ )
arr[i] = string_char_at(str, i + 1);
return arr;
2023-02-14 11:40:24 +01:00
}
function string_partial_match(str, key) {
var amo = string_length(str);
var run = 1;
var consec = 0;
var conMax = 0;
var misMatch = 0;
var kchr = string_char_at(key, run);
for( var i = 1; i <= amo; i++ ) {
var ch = string_char_at(str, i);
if(ch == kchr) {
consec++;
conMax = max(conMax, consec);
run++;
if(run > string_length(key)) return conMax - (misMatch + (amo - i));
kchr = string_char_at(key, run);
} else {
consec = 0;
2023-02-15 10:43:24 +01:00
misMatch += amo - i;
2023-02-14 11:40:24 +01:00
}
}
return -9999;
2022-12-21 02:30:23 +01:00
}