javascript - 使用正则表达式删除字符串 + 字符
问题描述
我对正则表达式很陌生,我想知道是否有一种方法可以在单行正则表达式中执行此操作
let error = '{"error":"invalid email address"}'
document.write("<p>old: <b>",error,"</b></p>")
error = error.replace(/["\{\}:]/g,'')//this
error = error.replace(/error/g,"")//and this in one line
document.write("<p>new: <b>",error,"</b></p>")
p{
display: block;
}
解决方案
使用创建的捕获组,()
并将该组的结果放入替换语句中$1
,您可以在其中替换1
为捕获组的编号:
error = error.replace(/{"error":"(invalid email address)"}/g, '$1')
let error = '{"error":"invalid email address"}'
document.write(`<p>old:<b> ${error}</b></p>`)
error = error.replace(/{"error":"(invalid email address)"}/g, '$1')
document.write("<p>new: <b>",error,"</b></p>")
p{
display: block;
}
如果字符串“无效的电子邮件地址”可以更改,那么您需要捕获除 之外的任何字符串"
,您可以使用以下方法:
error = error.replace(/{"error":"([^"]+)"}/g, '$1')
推荐阅读
- android - Android 在三星设备上保持屏幕开启
- html - CSS滚动隐藏溢出
- python - 我正在尝试完成一个基本的字符串方法练习。请告知我哪里出错了。谢谢
- python - 关于 numba 中 CUDA 线程的一个简单问题
- excel - 查询以根据列的值删除行
- django - 在 django DB 中保存 views.py 中的数据
- yocto - Connman 似乎没有启动 DHCP 服务器
- javascript - 使用页面的查询参数作为页面级查询中的参数
- git - 无法再将 Eclipse 存储库推送到 GitHub
- flutter - 如何在 Flutter 应用中使用 Tailwind-css