Javascript 正则表达式只得到2个数字,即使它的数量更少
我需要一个表达式,它返回一个包含两个数字的字符串,即使我只插入了一个数字。在这种情况下,用占位符填充它。这在正则表达式中是可能的吗Javascript 正则表达式只得到2个数字,即使它的数量更少,javascript,regex,Javascript,Regex,我需要一个表达式,它返回一个包含两个数字的字符串,即使我只插入了一个数字。在这种情况下,用占位符填充它。这在正则表达式中是可能的吗 使用javascript仅仅是一个正则表达式,无论是哪种语言,都不足以做到这一点 但使用可选的匹配组并没有那么难: var m = str.match(/(\d+)\D*(\d+)?/); if (m) { var number1 = m[1], number2 = m[2]===undefined ? defaultValue : m[2]
使用javascript仅仅是一个正则表达式,无论是哪种语言,都不足以做到这一点 但使用可选的匹配组并没有那么难:
var m = str.match(/(\d+)\D*(\d+)?/);
if (m) {
var number1 = m[1],
number2 = m[2]===undefined ? defaultValue : m[2];
// use your two numbers
} else {
// invalid : not even one number
}
这个问题似乎离题了,因为它是关于regex的,没有指定必要的补充标记(参见regex标记说明),