gpt4 book ai didi

javascript - 创建一个正则表达式来替换字符串中最后一次出现的字符

转载 作者:行者123 更新时间:2023-12-04 14:08:20 25 4
gpt4 key购买 nike

我需要创建一个正则表达式,它应该查找最后一个 '*' 而与字符串中的空格无关。
然后,我需要用一些文本替换该字符串。

目前,它正在替换字符串中第一次出现的“*”。

我如何解决它?

这是我的代码:

const regex = /\*/m;
const str = 'Field Name* * ';
const replaceStr = ' mandatory';
const result = str.replace(regex, replaceStr);
console.log('Substitution result: ', result);

此处,输出应为“必填字段名称”。但我得到的是“必填字段名称*”。

最佳答案

代替 RegEx,使用 String#substring String.lastIndexOf 如下

const str = 'Field Name* * ';
const replaceStr = 'mandatory';
const lastIndex = str.lastIndexOf('*');
const result = str.substring(0, lastIndex) + replaceStr + str.substring(lastIndex + 1);

console.log('Substitution result: ', result);


Still want to use RegEx?

const regex = /\*([^*]*)$/;
const str = 'Field Name* * Hello World!';
const replaceStr = ' mandatory';
const result = str.replace(regex, (m, $1) => replaceStr + $1);
console.log('Substitution result: ', result);

关于javascript - 创建一个正则表达式来替换字符串中最后一次出现的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58988070/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com