为什么d在这段代码中被@替换

时间:2016-05-03 05:01:45

标签: javascript regex

我正在用 - 。

替换电子邮件中的@符号
var authdata = JSON.parse(getCookie("authData"));
var namespace = authdata.Email.replace('@','_');
namespace = namespace.replace(/./, '_');
namespace = namespace.replace(/\./g, '_');

命名空间来自' _emo_duosoftware_com'

enter image description here

2 个答案:

答案 0 :(得分:3)

正则表达式中的

Thread.join()将匹配除换行符之外的任何单个字符。

问题出在这里

.

要替换小数点符号,请使用反斜杠将其转义。

这两个陈述可以合并

namespace.replace(/./, '_');

尽可能多地匹配var namespace = authdata.Email.replace(/[@.]/g, '_'); @.标志)并替换为g

答案 1 :(得分:1)

这是因为这个正则表达式:

TableViewController

这是一张非全球通配符,请参阅此处:http://regexone.com/lesson/wildcards_dot