代码之家  ›  专栏  ›  技术社区  ›  aL3xa

javascript regexp:r命名约定

  •  2
  • aL3xa  · 技术社区  · 16 年前

    我们都熟悉R中的命名约定(如果不是: Venables&Smith-R简介,第1.8章 )另一方面,正则表达式保持不变 南方旱地 到目前为止,我编程生活中最讨厌的部分…最近,我正式启动了JavaScript重述,并尝试创建精确的regexp来检查正确的r对象名。

    简介: 对象名称必须以开头 . 或小写/大写字母,如果它们以 . 无法继续使用数字…之后,字母数字符号允许 . 下划线 _ .

    长话短说,下面是我的JS代码:

    var txt = "._.";
    var inc = /^\.(?!\d)|^[a-z\.]/i;
    
    document.write(inc.test(txt));
    

    这种方法管理第一部分( . 和/或小写/大写,后加数字 . 但是我不能通过 & [\w\.] . 我可以编写一个函数来处理这个问题,但是是否可以用一个regexp来管理这个问题?

    1 回复  |  直到 16 年前
        1
  •  2
  •   Bryan    16 年前

    我不熟悉R或它的命名约定,但我会给它一个机会:

    如果你只是想验证 开始 正确地说,您只需要删除 \. 在角色类中,留下: /^\.(?!\d)|^[a-z]/i . 否则, . 可能仍然是第一个字符,对其余字符没有限制。

    如果要验证整个名称是否正确,则应执行以下操作:

    /^(?:\.(?!\d)|[a-z])[a-z0-9_\.]+$/i