从Javascript中的字符串中删除特定字符

时间:2012-05-01 09:51:44

标签: javascript string

我正在创建一个表单,以便在我们的呼叫记录系统中查找支持请求的详细信息。

呼叫引用被分配了一个类似F0123456的号码,这是用户输入的号码,但数据库中的记录将是123456。在使用jQuery ajax提交数据之前,我有以下代码用于从表单中收集数据。如果它存在,我将如何从字符串中去掉前导'F0'?

$('#submit').click(function () {        

var rnum = $('input[name=rnum]');
var uname = $('input[name=uname]');

var url = 'rnum=' + rnum.val() + '&uname=' + uname.val();

6 个答案:

答案 0 :(得分:49)

只需将其替换为零:

var string = 'F0123456'; // just an example
string.replace(/^F0+/i, ''); '123456'

答案 1 :(得分:5)

另一种方法:

rnum = rnum.split("F0").pop()

它将字符串拆分为两个:["", "123456"],然后选择最后一个元素

答案 2 :(得分:5)

Regexp解决方案:

ref = ref.replace(/^F0/, "");

简单的解决方案:

if (ref.substr(0, 2) == "F0")
     ref = ref.substr(2);

答案 3 :(得分:3)

如果不是前两个字符,并且您想从整个字符串中删除F0,则必须使用此正则表达式

   let string = 'F0123F0456F0';
   let result = string.replace(/F0/ig, '');
   console.log(result);

答案 4 :(得分:1)

老实说,我认为这可能是最简洁,最不令人困惑的,但这也许只是我:

str = "F0123456";
str.replace("f0", "");

甚至都不走正则表达式路线,只需直接替换即可。

答案 5 :(得分:1)

如果您想从整个字符串中删除F0,那么replaceAll()方法将为您服务。

const str = 'F0123F0456F0'.replaceAll('F0', '');
console.log(str);