【问题标题】:Erlang regexp vs. re loading issuesErlang 正则表达式与重新加载问题
【发布时间】:2011-03-08 15:25:25
【问题描述】:

这可能是非常基本的东西,但是我的 Erlang 安装顽固地拒绝了我对 re moduleerror:undefs 的调用。但是它接受regexp package,所以我认为它是一个版本问题。

我正在运行 v. 5.6.2,-import(re, [...]). 在我的文件顶部,还有其他我可能遗漏的问题吗?我搜索了相当长的时间,但找不到描述所需最低版本的页面。

在相关说明中,由于我对 Erlang 及其工具/社区/开发环境还很陌生,如果您对经常访问的网站或改变您的开发周期的工具有任何建议,请告诉我。

谢谢!

编辑:如果你想看一些代码:

Erlang (BEAM) emulator version 5.6.2 [source] [smp:2] [async-threads:0] [kernel-poll:false]

Eshell V5.6.2  (abort with ^G)
1> re:compile("paul").
** exception error: undefined function re:compile/1

2> regexp:match("paul","au").
{match,2,2}

在我的 Eunit 测试中:

::error:undef
  in function re:compile/1
    called as compile("\\s+")

【问题讨论】:

    标签: erlang


    【解决方案1】:

    尝试首先在 Erlang shell 中运行你的正则表达式代码,看看你是否得到同样的错误。 也许发布实际代码会有所帮助。

    【讨论】:

      【解决方案2】:

      您的 Erlang 安装非常旧。它可能是 R12B 之前的版本之一。目前最新的稳定版本是 R13B04,R14 目前处于 beta 阶段。

      【讨论】:

      • never 版本实际上会在 shell 顶部打印出 Erlang 版本号。不过,您的旧版本并没有这样做。 :-)
      • erlang:system_info(otp_release) 为您提供主要版本(例如R12B)。不确定您是否也可以获得次要版本...
      猜你喜欢
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多