小编dje*_*lin的帖子

rvm确定并安装最新版本的ruby

到目前为止我只知道如何做命令

rvm 2.0.0
Run Code Online (Sandbox Code Playgroud)

幸运的是谷歌告诉我

目前的稳定版本是2.0.0-p247.

但我不应该使用rvm为我做那一步吗?我无法弄清楚如何告诉rvm安装最新版本的ruby,而无需手动指定它.

ruby rvm

17
推荐指数
2
解决办法
7205
查看次数

Logback SMTPAppender限制率

如何限制Logback的电子邮件率SMTPAppender,以便每n分钟最多给我发一次电子邮件?

我根据Logback appender设置了我的日志记录,但我不太明白它是如何配置或子类化来实现的.

有隐藏的功能吗?有人开发了一个子类来处理这个问题吗?

java logging logback smtpappender

15
推荐指数
2
解决办法
4775
查看次数

日语中的正则表达式(正则表达式)

我正在学习英语的正则表达式(正则表达式),虽然有些概念似乎适用于日语等其他语言,但我觉得好像很多其他语言都没有.例如,正则表达式的常见用法是查找单词是否具有非字母数字字符.我不知道这种技术和其他技术如何适用于日语,因为不仅有三种书写系统,而且汉字也非常复杂,并且范围比字母数字字符大得多.虽然我参加了许多日语课程,但我很欣赏有关这一主题的任何信息以及需要深入研究的领域,因为我对该主题知之甚少.如果可能的话,我希望你的答案可以使用python和Java,因为那些是我熟悉的语言.谢谢您的帮助.

regex unicode multilingual

15
推荐指数
2
解决办法
1万
查看次数

Java日期年度计算按年计算,为期两天

如果你能想象的话,这会在我的软件中引起Y2K风格的错误.奇怪的是,一年的计算只发生在一年中的两天,我不太确定如何排除故障.

输出:

03-Jan-2013
02-Jan-2013
01-Jan-2013
31-Dec-2013 ** strange
30-Dec-2013 ** strange
29-Dec-2012
28-Dec-2012
27-Dec-2012
26-Dec-2012
25-Dec-2012
Run Code Online (Sandbox Code Playgroud)

我不确定Java日期实用程序的哪一部分可能导致此类错误.

代码(因为测试很小,我包括一个完整的工作程序):

import java.util.Calendar;
import java.util.Date;
import java.text.SimpleDateFormat;

public class DateT {

        private static String getFormattedBackscanStartTime(int days) {

                SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MMM-YYYY");
                Calendar workingDate = Calendar.getInstance();
                workingDate.add(Calendar.DATE, -1 * days);

                String formattedStartTime = dateFormat.format(workingDate.getTime());
                return formattedStartTime;
        }

        public static void main(String args[]) {

                for(int i = 35; i < 45; i++) {
                        System.out.println(getFormattedBackscanStartTime(i));
                }
        }
}
Run Code Online (Sandbox Code Playgroud)

java calendar date simpledateformat

15
推荐指数
2
解决办法
3923
查看次数

即使autocrlf设置为false,也会在checkout,reset --hard等之后修改Git文件

这是我的系统对话:

unrollme-dev-dan:views Dan$ git reset --hard HEAD
HEAD is now at 3f225e9 Fix scan titles
unrollme-dev-dan:views Dan$ git status
# On branch master
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#   modified:   app/signup/finish.html
#   modified:   app/signup/scan.html
#
Run Code Online (Sandbox Code Playgroud)

我将autocrlf设置为false:

unrollme-dev-dan:unroll-website Dan$ git config core.autocrlf
unrollme-dev-dan:unroll-website Dan$ 
unrollme-dev-dan:unroll-website Dan$ git config --global core.autocrlf
unrollme-dev-dan:unroll-website Dan$
Run Code Online (Sandbox Code Playgroud)

而且我没有任何.gitattributes文件弄乱了这个:

unrollme-dev-dan:unroll-website Dan$ find …
Run Code Online (Sandbox Code Playgroud)

git newline core.autocrlf

15
推荐指数
1
解决办法
4605
查看次数

简化债务加权有向图的算法

我一直在使用我编写的一个小蟒蛇脚本来管理我的室友之间的债务.它有效,但有一些缺失的功能,其中之一是简化不必要的复杂债务结构.例如,如果下面的加权有向图表示某些人,而箭头表示他们之间的债务(Alice欠Bob 20美元和Charlie $ 5,Bob欠Charlie 10美元,等等):

graph1

很明显,该图应简化为下图:

graph1简单化

如果爱丽丝可以直接将它交给查理,10美元从艾丽丝到鲍勃,然后从鲍勃到查理,没有任何意义.

那么,在一般情况下,目标是采用债务图并简化它(即生成具有相同节点但不同边缘的新图),以便

  1. 没有节点有边缘指向它的内部(没有无用的钱转手)
  2. 所有节点都具有与原始图中相同的"流"(它们在资金最终位置方面相同).

通过"流量",我的意思是所有输入的值减去所有输出(这是否有技术术语?我不是图论专家).所以在上面的例子中,每个节点的流量值是:

  • 鲍勃:+10
  • 爱丽丝:-25
  • 查理:+15

您可以看到第一个和第二个图表在每个节点上具有相同的流量,因此这是一个很好的解决方案.还有一些其他简单的情况,例如,可以通过移除最低值边缘并从所有其他边缘减去其值来简化任何循环.

这个:

graph2

应简化为:

graph2简单化

我无法想象没有人研究过这个问题; 我只是不知道要搜索哪些术语来查找信息(再次,不是图论专家).我一直在寻找几个小时无济于事,所以我的问题是:根据上面针对任何加权有向图指定的条件,什么算法会产生简化(新图)?

algorithm graph-theory graph-algorithm

15
推荐指数
3
解决办法
6725
查看次数

为什么这个正则表达式在R中使用lookbehinds无效?

我正试图在R中做一个lookbehind正则表达式来找到一个模式.我希望这会在'bob'中拉出'b',但我得到一个错误.

> regexpr("(?<=a)b","thingamabob")
Error in regexpr("(?<=a)b", "thingamabob") : 
invalid regular expression '(?<=a)b', reason 'Invalid regexp'
Run Code Online (Sandbox Code Playgroud)

这不会引发错误,但它也找不到任何错误.

> regexpr("(.<=a)b","thingamabob")
[1] -1
attr(,"match.length")
[1] -1
attr(,"useBytes")
[1] TRUE
Run Code Online (Sandbox Code Playgroud)

我很困惑,因为regexpr的帮助页面明确指出lookbehind应该有效:http://stat.ethz.ch/R-manual/R-patched/library/base/html/regex.html

有任何想法吗?

regex r

14
推荐指数
1
解决办法
1855
查看次数

Java作为Java的脚本语言?

是否可以使用Java作为Java的脚本语言?或者也许以某种方式在运行时将java脚本编译成java二进制文件?我确实试过搜索但除了一些黑客之外找不到任何全面的东西......

我有使用其他语言的经验,例如对于C#我使用lua非常方便,但现在我需要实现最大的性能,因为脚本的调用大约是每帧1.000.000.

所以我认为将java本身作为java程序的脚本语言,应该为我提供最好的性能和兼容性.

有什么建议?

java scripting performance jvm

14
推荐指数
5
解决办法
7003
查看次数

如何支持生活在一个git仓库中的多个私有npm包?

npm非常擅长支持软件包发布到全局/中央存储npm库,这对私有应用程序代码不起作用. npm还支持添加git repo作为依赖项,这使您可以拥有私有依赖项.

问题是,正如我所理解的那样,最好的做法是,我的npm包装往往非常紧凑和小,而我的git repos往往更大,并且将包括几个npm包.在指向github URL时,我不知道如何获得这种粒度.怎么解决这个?

UPDATE

我接受了"不要这样做,坚持不懈"的答案.我同意这个建议,但是YMMV.

git github node.js npm

14
推荐指数
1
解决办法
4225
查看次数

为什么尖锐引用lambda表达式?

它是On Lisp中经常使用的一种技术,它位于Common Lisp上:

> (mapcar #'(lambda (x) (+ x 10))
         '(1 2 3))
(11 12 13)
Run Code Online (Sandbox Code Playgroud)

为什么需要锐利报价甚至可能?lambda表达式返回函数对象,而尖锐的引用从名称返回函数对象.我也听说过关于lambda表达式是否是名称的矛盾信息 - 特别是On Lisp与标准相矛盾,但是他的代码似乎也与标准相矛盾.

在elisp中,似乎根本不需要它.令我惊讶的是,这里没有讨论词法范围,因此不清楚为什么它应该与Common Lisp完全不同.但是这个答案说不带引号的lambda表达式没有任何意义,因此,具有讽刺意味的是,有可能引入不带引号的lambda表达式作为引用的语法糖.但这与elisp手册中的声明相矛盾,即"在Emacs Lisp中,这样的列表是一个有效的表达式,可以计算出一个函数对象."

这个问题被标记为普通和e-lisp,因为我试图理解两者的理论模型,并通过了解它们的差异来学习它们.(更实际的是,我正在尝试学习elisp,但在Common Lisp上找到了很多很好的资源,所以我很想学习它们).

lisp lambda elisp common-lisp sharp-quote

14
推荐指数
3
解决办法
1719
查看次数