小编kqu*_*ers的帖子

简单的haskell拆分列表

我有以下函数,它接受一个列表并返回在给定元素n处拆分的两个子列表.但是,我只需要将它分成两半,奇数长度列表具有更大的第一个子列表

splitlist :: [a] -> Int -> ([a],[a])
splitlist [] = ([],[])
splitlist l@(x : xs) n | n > 0     = (x : ys, zs)
               | otherwise = (l, [])
    where (ys,zs) = splitlist xs (n - 1)
Run Code Online (Sandbox Code Playgroud)

我知道我需要将签名更改为[a] - >([a],[a]),但是在代码中我应该放置像length(xs)这样的东西,这样我就不会破坏递归?谢谢.

haskell

4
推荐指数
2
解决办法
1479
查看次数

Quick Regex Perl未终止

我正在尝试将Wiki标记转换为HTML标记,即

[[Image:wiki.png]]
[[Image:wiki.png|Wikipedia, The Free Encyclopedia.]]
Run Code Online (Sandbox Code Playgroud)

<img src="wiki.png" alt=""/>
<img src="wiki.png" alt="Wikipedia, The Free Encyclopedia."/>
Run Code Online (Sandbox Code Playgroud)

使用一行Perl

s/\[\[Image:(\w+?\.png)\|{0,1}(.*?)\]\]/g;
print;
Run Code Online (Sandbox Code Playgroud)

但是Perl不断抛出错误

替换替换未终止

它适用于此RegExr测试,更改分隔符并未解决问题.任何见解都会非常感激.

regex perl

3
推荐指数
2
解决办法
4367
查看次数

Ant命令行参数

使用eclipse运行配置运行时程序运行正常,但是当使用ant运行时,它无法从args [0]解析int,这是我不明白的.完整的代码可以在这里https://gist.github.com/4108950/e984a581d5e9de889eaf0c8faf0e57752e825a97 我相信它与蚂蚁有关,

target name="run" description="run the project">
   java dir="${build.dir}" classname="BinarySearchTree" fork="yes">
    <arg value="6 in.txt"/>
   /java>
/target>
Run Code Online (Sandbox Code Playgroud)

arg值将通过-D标志更改,如在-Dargs ="6 testData1.txt"中运行.

任何帮助将非常感激,这是非常令人沮丧的.

java ant

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

标签 统计

ant ×1

haskell ×1

java ×1

perl ×1

regex ×1