строк:Regex - Мне нужно разбить строку после первого номера
-45
89
-ertu567
tree5678
мне нужны те, разделить так:
-4 5
8 9
-ertu5 67
tree5 678
Everytime я пытаюсь использовать \d
, он видит -
в виде цифры.
строк:Regex - Мне нужно разбить строку после первого номера
-45
89
-ertu567
tree5678
мне нужны те, разделить так:
-4 5
8 9
-ertu5 67
tree5 678
Everytime я пытаюсь использовать \d
, он видит -
в виде цифры.
Это работает со мной
/^(\D*\d)(.*)$/
Я сделал скрипку для просмотра и просмотра
Это он, вы выиграли !!! Спасибо тонну gijswijs – Jack
Вы можете получить индекс матча регулярного выражения, и разделить строку после этого индекса:
function splitAtDigit(str) {
var m = /\d/.exec(str);
return m ? [str.substr(0, m.index + 1), str.substr(m.index + 1)] : [str];
}
document.write(JSON.stringify(splitAtDigit("-ertu567")));
Это слишком сложно, есть ли более простой способ сделать это? – Jack
Да, ты прав. Решение @gijswijs проще. –
@tzunghaor, пожалуйста, не путайте других, эти две вещи здесь синонимы. –
@ Ja͢ck Это не так. [0-9] просто 0-9, тогда как \ d может содержать любой номер юникода. – oopbase
@ Forlan07 Не в JavaScript. В JS '\ d' является сокращением для' [0-9] '. –