javascript - str.replace 中的白名单

标签 javascript php html

我正在使用此代码来替换名称中包含网站链接的每个人,将其更改为空,例如

用户名 - Somewebsite.com -> 用户名 -

为此,我使用以下代码:

name.replace(/([a-zA-Z0-9\-]*\.com)/g, '');

但我想做到这一点,以便当用户在他们的名字中使用我的网站地址时不删除它,例如

用户名 - Mywebsitename.com -> 用户名 - Mywebsitename.com

最佳答案

最简单的方法是仅使用 replace() 回调并清除特定字符串上的匹配

var mySite = 'Somewebsite.com';

var name   = "Username - Somewebsite.com";

var result = name.replace(/([a-zA-Z0-9\-]*\.com)/g, function(what) {
    return what === mySite ? what : "";
});

FIDDLE

关于javascript - str.replace 中的白名单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38294025/

相关文章:

javascript - 根据按下的按钮更改表单方法

javascript - 如何使用 JS 检查从 PHP 返回的空值?

javascript - onClick 从 session 中删除项目

javascript - 使用javascript的文件的MD5哈希

javascript - 按嵌套的隐藏输入值对 <li> 元素进行排序

javascript - javascript 何时违背 promise 或对象被垃圾收集

jquery - 一个用jQuery写的动画

php - “id不能为null。”尝试从ElasticSearch删除时出错

javascript - jQuery 动画 marginRight 不起作用,但 marginLeft 工作得很好

javascript - 操作 HTML 并放入数组