55

我正在创建一个表单来在我们的通话记录系统中查找支持请求的详细信息。

呼叫参考被分配了一个数字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();
4

6 回答 6

82

只需将其替换为空:

var string = 'F0123456'; // just an example
string.replace(/^F0+/i, ''); '123456'
于 2012-05-01T09:54:15.883 回答
27

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

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

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

于 2019-06-19T01:46:54.690 回答
9

另一种方法:

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

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

于 2012-05-01T09:54:26.743 回答
8

正则表达式解决方案:

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

简单的解决方案:

if (ref.substr(0, 2) == "F0")
     ref = ref.substr(2);
于 2012-05-01T09:55:00.787 回答
8

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

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

于 2020-09-23T08:53:31.060 回答
3

如果它不是前两个字符并且你想从整个字符串中删除 F0 那么你必须使用这个正则表达式

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

于 2020-01-18T17:14:41.050 回答