Reb*_*cca 11 javascript string replace global typescript
我正在尝试用x字符替换电子邮件中的所有句号 - 例如"my.email@email.com"将变为"myxemail @ emailxcom".电子邮件设置为字符串.
我的问题是它不是替换完全停止,而是替换每个角色,所以我只得到一串x.
我只需要一个完整的停止工作,所以我假设我在全局实例部分错了.这是我的代码:
let re = ".";
let new = email.replace(/re/gi, "x");
Run Code Online (Sandbox Code Playgroud)
我也试过了
re = /./gi;
new = email.replace(re, "x");
Run Code Online (Sandbox Code Playgroud)
如果任何人都可以放弃任何亮光,我会非常感激,我已经坚持了这么久,似乎无法弄清楚我哪里出错了.
**编辑:哎呀,我的新变量实际上叫做newemail,关键字new并没有引起问题!
Aja*_*pta 38
您可以尝试split()和join()方法,这是为我工作。(对于普通的字符串文本)它的实现和理解都很简短。下面是一个例子。
let email = "my.email@email.com";
email.split('.').join('x');
Run Code Online (Sandbox Code Playgroud)
因此,它将.用x. 所以,经过上面的例子,email变量变成myxemail@gmailxcom
gyr*_*yre 29
你的第二个例子是最接近的.第一个问题是您的变量名称,new它恰好是JavaScript的保留关键字之一(而是用于构造对象,如new RegExp或new Set).这意味着您的程序将抛出语法错误.
此外,由于dot(.)是正则表达式语法中的特殊字符,因此您应该将其转义为\..否则你会最终得到result == "xxxxxxxxxxxxxxxxxx",这是不可取的.
let email = "my.email@email.com"
let re = /\./gi;
let result = email.replace(re, "x");
console.log(result)Run Code Online (Sandbox Code Playgroud)
小智 12
您可以只使用replaceAll()字符串函数,如下所述:
https: //developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replaceAll
如果您收到
Property 'replaceAll' does not exit on type 'string'
错误 - 转到tsconfig.json“lib”并在其中更改或添加“es2021”。
像这样:
更多信息在这里:属性“replaceAll”在类型“string”上不存在
| 归档时间: |
|
| 查看次数: |
38183 次 |
| 最近记录: |