Game Maker Games, Articles, Tutorials & More

Game Maker Network


Howdy, Guest! Please sign in or register an account.

Print

string_soundex

By Daniel · January 11, 2009

Returns the Soundex code of some string

// string_soundex(str)
// Returns the Soundex code of some string

var map, c, i, j;

argument0 = string_upper(argument0);
map[1] = 'BFPV'; map[2] = 'CGJKQSXZ';
map[3] = 'DT';   map[4] = 'L';
map[5] = 'MN';   map[6] = 'R';

for (i = string_length(argument0); i > 1; i -= 1) {
  c = string_char_at(argument0, i);
  for (j = 1; j <= 6; j += 1)
    if (string_pos(c, map[j]) > 0)
      argument0 = string_insert(string(j), string_delete(argument0, i, 1), i);
}

for (i = 1; i <= 6; i += 1)
  argument0 = string_replace_all(argument0, 2*string(i), string(i));

return string_char_at(argument0, 1) +
       string_copy(string_digits(argument0) + '000', 1, 3);

Categories: String handling

Comments

There are no comments to display.

Post a Comment

You must be signed in to post comments.

Advertisement