我试图在(并包括)第一个数字后提取字符:
ABC 123SD => 123SD
123 => 123
123SD => 123SD
ABC =>
我目前的解决方案如下,
var string1 = ABC 123SD;
var firstDigit = string1.match(/\d/);
var result = string1.slice($string.indexOf(firstDigit), 0);
答案 0 :(得分:3)
使用正则表达式。
var string = 'ABC 123SD';
var match = string.match(/\d.*/);
var result = match ? match[0] : '';
console.log(result);

\d
匹配第一个数字,.*
匹配其后的所有内容。
答案 1 :(得分:0)
您可以删除所有非数字的前导字符,例如
function strip(s) {
return s.replace(/^\D*/,'');
}
// Example
['ABC 123SD', '123', '123SD', 'ABC'].forEach(s => console.log(s + ' => ' + strip(s)));