Как отформатировать ввод «123456789» по факсу /123456789@faxabc.com с помощью регулярного выражения? - PullRequest
0 голосов
/ 05 мая 2011

Пользовательский ввод 1234567890 , а затем необходимо отформатировать его в fax/123456789@faxabc.com. Попробовал следующее регулярное выражение, но не работает:

fax/{\d+}/@fax.com
fax\//{\d+}/@faxabc.com
[fax\//{\d+}/@faxabc.com]

Самым близким является fax/{\d+}/@fax.com, получит fax123456789@faxabc.com. Однако после слова «факс» нужно использовать «/».

Ответы [ 2 ]

1 голос
/ 05 мая 2011

Возможно, вы пытаетесь сопоставить его в строке так:

function formatFaxNo(s) {
  var re = /(\D)(\d+)(\D)/;
  return s.replace(re, '$1' + 'fax/'+'$2'+'@faxabc.com' + '$3');
}

// Here is a fax/123456789@faxabc.com number.
formatFaxNo('Here is a 123456789 number.'); 

// Fax to here: fax/123456789@faxabc.com.
formatFaxNo('Fax to here: 123456789.');     
0 голосов
/ 05 мая 2011

Это называется манипулирование / объединение строк, а не регулярное выражение:

    var input = 123456789; //or whatever user inputs
    var output = "fax/" + input + "@abc.com" ;

Что-то не так с этим?

...