使用 JavaScript 替换和子字符串替换字符
Replacing characters using javascript replace and substring
我在js中有一个字符串,如下所示:
var frmSearch ="LoginID=:PersonName=:CallIDNumber=:NumberCalledTo=%2B92+3344038368:NumberCalledFrom=%2B92+3344038368:Notes="
我想删除空格 (%2B( 并从 NumberCalledTo 和 NumberCalledFrom 中将 + 替换为 ~。 号码可以有不同的长度,登录ID,呼叫ID号码可以有值或为空。注释可以为空,也可以具有值。
我试过这个,但它不起作用:
frmSearch = frmSearch.substr(0, frmSearch.length - s.length);
var NumberCalledTo = frmSearch.substr(frmSearch.indexOf(":NumberCalledTo"), frmSearch.indexOf(":NumberCalledFrom"));
NumberCalledTo = NumberCalledTo.replace('+', '').replace('%2B', '~');
var NumberCalledFrom = frmSearch.substr(frmSearch.indexOf(":NumberCalledFrom"), frmSearch.indexOf(":Notes"));
NumberCalledFrom = NumberCalledFrom.replace('+', '').replace('%2B', '~');
请建议怎么做?
如果你只想替换 %2B
和 +
的值NumberCalledTo/From
(而不是例如 CallIDNumber 的值等(,你可以使用一些正则表达式,如下所示:
var str = "LoginID=:PersonName=:CallIDNumber=:NumberCalledTo=%2B92+33440+38368:NumberCalledFrom=%2B92+3344038368:Notes=";
var regex = new RegExp("''bNumberCalled(To|From)=[^:$]*?[:$]", "g");
str = str.replace(regex, function(match) {
return match.replace(/%2B/g, "").replace(/'+/g, "~");
});
另请参阅此简短演示。
简短解释:
第一个replace(...)
只是隔离了"NumberCalledTo="和"NumberCalledFrom="部分,因此不会无意中替换任何其他部分。
Senocd 和第三个replace(...)
分别替换了 %2B
和 +
的所有出现。
(有关正则表达式的详细信息,请单击此处。
var frmSearch ="LoginID=:PersonName=:CallIDNumber=:NumberCalledTo=%2B92+3344038368:NumberCalledFrom=%2B92+3344038368:Notes=";
var r = frmSearch.replace(/'+/g,'~').replace(/%2B/g,'+');
alert(r);
var mystring = 'LoginID=:PersonName=:CallIDNumber=:NumberCalledTo=%2B92+3344038368:NumberCalledFrom=%2B92+3344038368:Notes=';
var newString1 = mystring.replace(/%2B/g, "~");
var newString2 = newString1.replace(/[+'-]/g, " ");
试试这个它会起作用
相关文章:
- 如何用jquery替换字符串中可能变化的字符
- 用数字单位替换字符串的一部分
- 替换字符串javascript中的所有特殊字符..
- 替换字符串的脚本;在某些网站上不起作用
- 使用javascript替换字符串中除第一个和最后一个之外的所有字符
- 替换字符串中的占位符值
- 用HTML元素替换字符串的一部分
- JavaScript来替换字符串中的变量
- 如何替换字符串中最后一个出现的变量
- 在JavaScript中,如何用一个字符替换字符串中的所有字母
- 替换字符串中的数字
- 如何使用JavaScript Regex替换字符串中双引号之间的文本
- JavaScript:替换字符串两边的字符
- 用JQuery/Javascript替换字符串中的所有逗号
- 替换字符串的下一个匹配项
- JavaScript 不会替换字符串的最后一个符号
- 在 JavaScript 中替换字符串中的字母
- 修复了如何在容器中查找和替换字符串的功能
- 需要在 javascript 倒计时达到 0 后替换字符串
- j如何从给定字符串的一部分替换字符串