到目前为止,这对我来说很有效,可以从字符串中查找和删除单词,但不幸的是,它也匹配数字的单个数字,这些数字是较大的十进制数字的一部分。如何修改我的Reg Expr与十进制数字不匹配,但处理任何其他非数字出现的'。'作为一个单词解析器? `
$("#123").val(removeSubstring("this should be removed: 9. But not 9.9 or 1.9 or 9.1 or 999 but it should remove this 9 and this 9,too!","9"));
function removeSubstring(lookIn,subStringToRemove){
return lookIn.replace(new RegExp("\\b" + subStringToRemove + "\\b","gi"),"");
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id=123 style="width: 100%;"></input>
&#13;
所需的输出应为&#34; this should be removed: . But not 9.9 or 1.9 or 9.1 or 999 but it should remove this and this ,too!
。&#34;所以&#34; 9&#34;应该只删除。
答案 0 :(得分:1)
如果你想删除任意数量的数字后跟点或逗号保持点和逗号,这应该适合你:
data.replace(/\d+(\.|\,\D?)/g, '$1')
\d+
找到任意数字的数字
\.|\,
找到&#39;。&#39;或&#39;,&#39;
\D?
找到一个或零个非数字字符
()
创建捕获组。
$1
在替换时使用第一个捕获组的内容。
答案 1 :(得分:0)