该方法:

String.prototype.toUnderscore = function () {
    return this.replace(/(?!^.?\/)([A-Z])/g, function ($1) {
        return "_" + $1;
    }).toLowerCase();
};


AccountUser更改为_account_user显然是错误的。它应该是account_user。因此,我们必须排除首次出现的情况。怎么做?

谷歌搜索是胡说八道,我只得到关于库Underscore.js的结果。我的方法是:

(/.+(?!^.?\/)([A-Z])/g


但事实恰恰相反。帮助将不胜感激。

最佳答案

(?!^.?\/|^)([A-Z])


试试看,看演示

http://regex101.com/r/zR2tR4/5

关于javascript - JS:String.prototype.toUnderscore(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26014078/

10-10 04:12