Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用逗号符号字符串替换所有字符,javascript_Javascript_Jquery - Fatal编程技术网

用逗号符号字符串替换所有字符,javascript

用逗号符号字符串替换所有字符,javascript,javascript,jquery,Javascript,Jquery,用户可以在如下输入字段中键入单独的列表,例如: 123, 123, 123 123!123!123 123:123:123 使用完成后,我想用逗号符号替换所有非数字字符。我该怎么做?当用户完成时,我希望字符串用逗号符号分隔 我试过这样做: var accidentFieldVal = $('#accidentId').val().split(/[ ,]+/).join(','); accidentFieldVal = accidentFieldVal.replace(/,\s*$/, ""

用户可以在如下输入字段中键入单独的列表,例如:

123, 123, 123

123!123!123

123:123:123
使用完成后,我想用逗号符号替换所有非数字字符。我该怎么做?当用户完成时,我希望字符串用逗号符号分隔

我试过这样做:

var accidentFieldVal = $('#accidentId').val().split(/[ ,]+/).join(',');
accidentFieldVal = accidentFieldVal.replace(/,\s*$/, "");
试试这个:

accidentFieldVal = $('#accidentId').val();
accidentFieldVal = accidentFieldVal .replace(/^[^\d]+|[^\d]+$/g, '');
accidentFieldVal = accidentFieldVal .replace(/[^\d]+/g, ',');
var target = "10:20:30:40.0";

function replaceComma(str)
{
   return str.replace(/[^\d.]+/g, ',');
}

replaceComma(target); // output: "10,20,30,40.0"

如果您正在寻找一种用逗号替换非数字组的简单方法,以下内容就足够了:

function replaceWithCommas (data) {
    return data.replace(/[^\d]+/g, ",");
}
[^\d]+
仅匹配一个或多个非数字字符

运行:

console.log (replaceWithCommas("123, 123, 123"));
console.log (replaceWithCommas("123!123!123"));
console.log (replaceWithCommas("123:123:123"));
产出:

123,123,123
123,123,123
123,123,123

Shriya R的答案只适用于整数。 如果也要使用双值,请尝试以下操作:

var target = "10:20:30:40.0";

function replaceComma(str)
{
   return str.replace(/[^\d.]+/g, ',');
}

replaceComma(target); // output: "10,20,30,40.0"

您能否给出一个预期输出的示例,以及您试图解决的JS代码this@RoryMcCrossan:预期产量?预期的输出应该是带有逗号符号的字符串。用我的尝试检查更新的代码。逗号符号代替。。。什么
我想用逗号符号替换所有字符
表示您试图获取
,,,,,,,,,,
,但我认为这是不对的。@RoryMcCrossan:检查我的问题?“我想用逗号符号替换所有字符”。。。。字谜,而不是数字。这个!,:,现在,这是有意义的。”“所有字符”都包含数字和符号,因此不清楚原因。我编辑了你的问题,把它包括进去。嗯,我以前试过这个。。但是是的。所以,如果我想替换其他字符,我也必须添加这个?现在我理解了您的要求。试着编辑答案正如另一个答案指出的那样,
\D
相当于
[^\D]
-我已经忘记了这个问题。谢谢。但我的结果如下:123123!123.. 最后一个没有格式化。。var accidentFieldVal=$('#accidentId').val()。替换(/[^\d]+/,“,”);我错过了替换上的“全球”标志-现在添加。