Avatar billede mrfunder Nybegynder
30. juni 2010 - 12:55 Der er 3 kommentarer og
1 løsning

Hjælp til replace function

Hej Eksperter,

Jeg forsøger at lave en replace funktion til brug i visning af en "safe-url" afhængigt af brugerens titel.

Min funktion replacer mellemrum og de æ-å uden problemer, men har problemer med specielle tegn - hvad gør jeg galt?

På forhånd tak


function replace(input) {

  var toReplace = {
    ' ': '-',
    'æ': 'ae',
    'Æ': 'ae',
    'ø': 'oe',
    'Ø': 'oe',
    'å': 'aa',
    'Å': 'aa',
    '!': '',
    '@': '',
    '#': '',
    '$': '',
    '%': '',
    '^': '',
    '&': '',
    '*': '',
    '(': '',
    ')': '',
    '+': '',
    '=': '',
    '-': '',
    '[': '',
    ']': '',
    '\': '',
    "'": '',
    '"': '',
    ';': '',
    ',': '',
    '.': '',
    ':': '',
    '/': '',
    '{': '',
    '}': '',
    '|': '',
    '<': '',
    '>': '',
    '?': ''
  };
   
  var string = input.replace(/./g, function (match) {
    return toReplace[match] || match;
  });

  return string.toLowerCase();   

}
Avatar billede softspot Forsker
30. juni 2010 - 13:20 #1
Prøv denne i stedet:

function replace(input) {

  var toReplace = {
    ' ': '-',
    'æ': 'ae',
    'Æ': 'ae',
    'ø': 'oe',
    'Ø': 'oe',
    'å': 'aa',
    'Å': 'aa',
    '!': '',
    '@': '',
    '#': '',
    '$': '',
    '%': '',
    '^': '',
    '&': '',
    '*': '',
    '(': '',
    ')': '',
    '+': '',
    '=': '',
    '-': '',
    '[': '',
    ']': '',
    '\\': '',
    '\'': '',
    '"': '',
    ';': '',
    ',': '',
    '.': '',
    ':': '',
    '/': '',
    '{': '',
    '}': '',
    '|': '',
    '<': '',
    '>': '',
    '?': ''
  };

  var string = input.replace(/./g, function(match) {
    return toReplace[match] != null ? toReplace[match] : match;
  });

  return string.toLowerCase();

}
Avatar billede The_Buzz Novice
30. juni 2010 - 14:52 #2
mrfunder (7.140 point. Point ude: 1.970)

Måske du skulle lukke dine spørgsmål?
http://www.eksperten.dk/list/spoergsmaal/mrfunder
Avatar billede mrfunder Nybegynder
30. juni 2010 - 16:50 #3
Tak for hjælpen softspot!

Smider du et svar?
Avatar billede softspot Forsker
30. juni 2010 - 17:00 #4
Velbekomme :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester