小编A F*_*ich的帖子

Clojure:如何在正则表达式中使用变量?

在正则表达式中使用变量的正确方法是什么?例如:

(def var "/")
(split "foo/bar" #var)
Run Code Online (Sandbox Code Playgroud)

应该给

=> ["foo" "bar"]
Run Code Online (Sandbox Code Playgroud)

但它不会这样.那我该怎么做?非常感谢你提前.

clojure

8
推荐指数
2
解决办法
1939
查看次数

如何根据正则表达式应用"过滤器"?

是否可以根据正则表达式应用过滤器?我的想法是这样的

(filter #"<+\p{Alnum}+>" ["abc" "<def>"])
Run Code Online (Sandbox Code Playgroud)

回来

=> ["<def>"]
Run Code Online (Sandbox Code Playgroud)

提前感谢提示.

regex clojure

6
推荐指数
1
解决办法
5634
查看次数

课堂上有几个"私人"声明

我正在浏览一些开源代码并找到类似这样的类声明:

class Foo{
    private:
        // declarations
    private:
        // declarations
    private:
        // declarations
    public:
        // declarations
};
Run Code Online (Sandbox Code Playgroud)

有没有时间你想做这样的事情,除了在有长的声明清单时提醒你成员的隐私?

c++ class declaration

5
推荐指数
1
解决办法
183
查看次数

正则表达式中的字母数字值的快捷方式(Clojure)?

正则表达式中是否有字母数字值的快捷方式,这样#"[a-zA-Z0-9]"您可以编写类似的东西#"\alphanum+"吗?

clojure

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

matlab函数返回子系统的父系统?

在simulink子系统中,我想用父系统中的From对应In-/OutportsFrom-block 替换所有块.是否有一个MATLAB函数返回子系统的父系统,或者一种方便的方法来实现这一点而不调整路径字符串?

matlab simulink

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

ReadP递归解析

一篇关于"(a*b+c^d)"使用ReadP将字符串解析为树的wikibooks文章中,有以下代码:

import Text.ParserCombinators.ReadP

brackets p = do char '('
                r <- p
                char ')'
                return r

data Operator = Add | Mul | Exp deriving Show
operators = [(Add,'+'),(Mul,'*'),(Exp,'^')]

data Tree = Branch Operator Tree Tree | Leaf String deriving Show

leaf = do s <- many1 (choice (map char ['a'..'z']))
          return (Leaf s)

tree = foldr (\(op,name) p ->
               let this = p +++ (p +++ brackets tree
                        >>= (\a -> …
Run Code Online (Sandbox Code Playgroud)

recursion parsing haskell

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

Clojure:'断言'的参数号错误了吗?

我正在学习Clojure并且正在乱搞REPL.因为assert,文件说

Usage: (assert x)
   (assert x message)

Evaluates expr and throws an exception if it does not evaluate to
logical true.
Run Code Online (Sandbox Code Playgroud)

所以我期望(assert false "Error message")引发错误和输出"Error message".但是,它给出了

java.lang.IllegalArgumentException: Wrong number of args (4) passed to: core$assert (NO_SOURCE_FILE:0)
Run Code Online (Sandbox Code Playgroud)

为什么它说我有四个参数,什么是正确的用法?文档assert不是太冗长.

assert clojure

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

声明struct时的向量分配

您可以在以下内容中创建包含数组的C++结构:

struct foo{
    int bar[42];
};
Run Code Online (Sandbox Code Playgroud)

我想做的是:

struct foo{
    std::vector<int> bar(42);
};
Run Code Online (Sandbox Code Playgroud)

当然这不会编译,但你得到了意图.我知道.reserve()之类的东西,但我希望在声明一个时已经分配了空间foo.

原因是我应该改变一个相当复杂的Perl脚本,该脚本在结构体内生成带有数组的C代码.这些数组应该用std::vectors 代替.该脚本随后根据XML文件初始化数组,我宁愿不在push_back脚本中乱码,因为结构是深层嵌套的(数组的结构和结构数组).阵列的大小当然会有所不同.

谢谢你的建议.

c++ struct vector

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

标签 统计

clojure ×4

c++ ×2

assert ×1

class ×1

declaration ×1

haskell ×1

matlab ×1

parsing ×1

recursion ×1

regex ×1

simulink ×1

struct ×1

vector ×1