我希望删除字符串中的所有数值,但前提是该字符串至少包含一个字母。
我如何在JavaScript中做到这一点?
例如:
var s = "asd23asd"那么结果必须是正确的。
不过,如果
var s = "123123"则结果必须为123123,因为字符串没有任何字母。
发布于 2015-06-05 09:56:59
function filter(string){
var result = string.replace(/\d/g,'')
return result || string;
}或直接
var newString = string.replace(/\d/g,'') || string;为什么要工作
和&是条件运算符,并确定您在if中使用.
如果你做了什么
var c1 = false, c2 = true, c3= false, c4 = true;
if( c1 || c2 || c3 || c4) {
}此评估将在有效或无效的第一分钟停止。
这个想法是,在c2中,求值停止-这个心比(假的)要快得多(真?假的)
此时,我们可以添加另一个概念,运算符总是返回计算中的最后一个元素。
返回“嘿”,记住在JS中“嘿”是真的但'‘是假的
有趣的例子:
var example = {
'value' : {
'sub_value' : 4
}
}
var test = example && example.value && example.value.sub_value;
console.log(test) //4
var test_2 = example && example.no_exist && example.no_exist.sub_value;
console.log(test_2) //undefined
var test_3 = example.valno_existue.sub_value; //exception
function test_function(value){
value = value || 4; //you can expecify default values
}发布于 2015-06-05 09:56:31
你可以试试这个。首先检查单词是否包含任何字母表,如果是,则替换。
var s = "asd23asd";
if(/\w+/.test(s))
s = s.replace(/\d+/g, '');发布于 2015-06-05 09:55:25
https://stackoverflow.com/questions/30663518
复制相似问题