JavaScript-当整个文本包含时替换
JavaScript - replace when ENTIRE text contains
很抱歉收到noob问题。。。。。
我有两个数组中有字符串的对象。。。。。
const collection = [
{name: 'strA', value: 'Hello World'},
{name: 'strB', value: 'World'},
]
我只想替换具有整个短语"世界"的字符串值
简单地做。。。。
collection.map((item) => {
item.value.replace('World', 'Earth')
});
会不希望地将我的数组更改为。。。
const collection = [
{name: 'strA', value: 'Hello Earth'},
{name: 'strB', value: 'Earth'},
]
而事实上,我想要的是。。。。
const collection = [
{name: 'strA', value: 'Hello World'},
{name: 'strB', value: 'Earth'},
]
有什么想法吗?
谢谢!
使用带有起始(^
)和结束($
)锚点的正则表达式
const collection = [
{name: 'strA', value: 'Hello World'},
{name: 'strB', value: 'World'},
];
var result = collection.map((item) => {
return item.value.replace(/^World$/, 'Earth')
});
console.log(result);
当你说时
collection.map((item) => {
item.value.replace('World', 'Earth')
});
指collection
替换中的每个item
,如果它找到一个单词"世界"到"地球"。
但在这种情况下,即使是数组的第一个元素也有单词"World"。所以,如果你只需要修改一个项目,其中确切地包含单词"世界",那么我们应该更具体。为此,我们需要使用regEx,即/^World$/
^
以"W"开头,$
以"d"结尾。
collection.map((item) => {
item.value.replace(/^World$/, 'Earth')
});
或
如果你特别想修改确切的索引(即集合中的第二个项目),如果它有单词"地球",那么
if(collection[1]) //checking not null
collection[1] = collectioin[1].replace('World', 'Earth')
相关文章:
- Javascript对象类在单击时打开窗口进行颜色选择,并在更改时替换对象背景颜色
- 在向下滚动JS/HTML/CSS wordpress网站时替换徽标图像
- 仅在边界内时替换特定字符
- 在提交未提交表格时替换Div
- 当jQuery ajax请求中包含#时,URL中断
- 当 URL 包含“#”时,jQuery Document 就绪失败
- SVG在嵌入时可访问,但在包含时不可访问
- 如何在页面加载时替换不在 DOM 中的文本
- 当页脚链接发生更改时替换正文内容
- JavaScript 字符串在字符串具有
时替换 - 如何在加载 Web 图像(非本地)时替换/遮罩特定颜色
- 当计时器结束时替换
- JS/XSS:将用户提供的字符串分配给变量时;替换 <,> 和字符串分隔符是否足够
- 链接在被 Angular JS 包含时不再有效
- 单击按钮时替换文本
- 仅在更改时替换为 jquery
- 如何在单击链接时替换文本区域中的某些文本
- 单击链接时替换链接的文本区域
- 加载时替换内容
- JavaScript-当整个文本包含时替换