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

Alp*_*apa 34 javascript string

我正在创建一个表单来查询我们的呼叫记录系统中的支持请求的详细信息.

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

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

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

var url = 'rnum=' + rnum.val() + '&uname=' + uname.val();
Run Code Online (Sandbox Code Playgroud)

Mat*_*ens 59

只需将其替换为零:

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

  • 包含那个“ +”可能会引起误解。同样因为这是一个“第一实例”替换,所以我本来倾向于非正则表达式替换(但这并不重要)或一个“ substr”。 (3认同)

Sto*_*ing 25

老实说,我认为这可能是最简洁和最不容易混淆的,但也许这只是我:

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

Run Code Online (Sandbox Code Playgroud)

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


pau*_*r19 7

另一种方法:

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

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


Pen*_*Liu 7

如果您想F0从整个字符串中删除,那么该replaceAll()方法适合您。

const str = 'F0123F0456F0'.replaceAll('F0', '');
console.log(str);
Run Code Online (Sandbox Code Playgroud)


Ber*_*rgi 6

正则表达式解决方案:

ref = ref.replace(/^F0/, "");
Run Code Online (Sandbox Code Playgroud)

简单的解决方案:

if (ref.substr(0, 2) == "F0")
     ref = ref.substr(2);
Run Code Online (Sandbox Code Playgroud)