如何替换两个分隔符之间的文本
Javascript: How do I replace text between two delimiters?
var record = "HENRY|5|58|L581"
如何将以上内容改为:
record now equals "HENRY|Five|58|L581"
我知道如何检索第一个'|'和第二个'|'的索引。我知道如何将数字"5"检索到字符串中。
但是我不知道如何用单词Five来代替这个5。
部分|5|可以是1-50中的任意数字
是这样吗?
record = record.replace('|5|', '|FIVE|');
以下编辑:
要用FIVE替换任何数字,您可以执行
record = record.replace(/'|'d+'|/, '|FIVE|');
如果你想根据数字来替换(也许当数字是10时你想要10),那么你必须做一些工作:
record = record.replace(/'|'d+'|/, function(str) {
var number = parseInt(str,10);
return 'FIVE'; // here build a new string and return it
});
您可以这样做,例如:
var record = "HENRY|5|58|L581"
var recordArray = record.split("|");
for (var i = 0; i < recordArray.length; i++) {
if (recordArray[i] === "5") {
recordArray[i] = "FIVE";
}
}
record = recordArray.join("|"); // or record = recordArray.toString();
这是你想要达到的目标吗?
如果你想要任何数字,你可以把它设置成一个函数:
function changeNumber(textVar, valueToChange, replaceText) {
var recordArray = textVar.split("|");
for (var i = 0; i < recordArray.length; i++) {
if (recordArray[i] === valueToChange) {
recordArray[i] = replaceText;
}
}
return recordArray.join("|"); // or recordArray.toString();
}
<<p>看到演示/strong>。 我假设你不想用"five"替换任何数字,你想用实际的字符串替换表示数字。
var repl = [0, 1, ....];
var to = ["zero", "one", ...];
var recordArray = record.split("|");
for (var i = 0; i < recordArray.length; i++) {
recordArray[i] = to[indexOf(recordArray[i], repl)];
}
finStr = recordArray.join("|");
相关文章:
- 函数参数中的数据与指定变量之间的任何性能差异
- 全局变量和全局对象的属性之间有什么区别吗
- java.net和javascript之间正则表达式的差异
- JavaScript中的函数和对象之间没有区别吗?
- 获取@ResponseBody的一部分作为主干和Spring MVC控制器之间的参数
- Jquery在函数之间传递表行
- jquery正则表达式在2个分隔符之间进行替换
- 如何在分隔符正则表达式 javascript 之间选择 char
- 如何在 2 个分隔符之间更改 HTML
- 如何在 {{#each}} 循环中的元素之间添加分隔符,最后一个元素之后除外
- 锚点之间的AnguarJS分隔符
- Jquery UI可排序小部件在可排序项之间具有分隔符
- Regex获取字符和空白之间的字符串,并排除第一个分隔符
- 如何替换两个分隔符之间的文本
- JavaScript、动态Regex、替换分隔符之间的所有内容(包括分隔符)
- 匹配分隔符之间的特殊字符的正则表达式
- 替换分隔符之间的不匹配
- Javascript匹配分隔符之间的所有内容,包括换行符
- Regex:在起始分隔符和可选的结束分隔符之间捕获
- Js正则表达式在两组分隔符之间匹配,这可能会出现很多次