标签: unify

如何以最聪明的方式在PHP中替换不同的换行符样式?

我有一个可能有不同换行样式的文本.我想用相同的换行符替换所有换行符'\ r \n','\n','\ r'(在本例中为\ r \n).

最快的方法是什么?我目前的解决方案看起来像这样的方式很糟糕:

    $sNicetext = str_replace("\r\n",'%%%%somthing%%%%', $sNicetext);
    $sNicetext = str_replace(array("\r","\n"),array("\r\n","\r\n"), $sNicetext);
    $sNicetext = str_replace('%%%%somthing%%%%',"\r\n", $sNicetext);
Run Code Online (Sandbox Code Playgroud)

问题是您无法通过一次替换来执行此操作,因为\ r \n将复制到\ r \n\r \n.

谢谢您的帮助!

php replace newline unify

35
推荐指数
4
解决办法
3万
查看次数

在haskell中实现统一算法

我正在尝试使用指定为的算法实现unify函数

unify ? ? = idSubst
unify ? ? = update (?, ?) idSubst
unify ? (?1 ? ?2) =
    if ? ? vars(?1 ? ?2) then
      error ”Occurs check failure”
    else
      update (?, ?1 ? ?2) idSubst
unify (?1 ? ?2) ? = unify ? (?1 ? ?2)
unify (?1 ?1 ?2) (?3 ?2 ?4) = if ?1 == ?2 then
                                   (subst s2) . s1
                                  else
                                   error ”not uni?able.”
          where s1 = unify ?1 ?3
                s2 = unify (subst …
Run Code Online (Sandbox Code Playgroud)

haskell unify

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

为什么SWI-Prolog将引用和不带引号的字符串(没有空格)统一到同一规则?

假设我有以下规则:

unify('test', 'this is a test').
run :- write('Enter something: '), 
       read(X), 
       unify(X, Y), 
       write('The answer is '), write(Y).
Run Code Online (Sandbox Code Playgroud)

然后我运行如下:

?- ['unify.pl'].
% unify.pl compiled 0.00 sec, -48 bytes
true.

?- run.
Enter something: test.
The answer is this is a test
true.

?- run.
Enter something: 'test'.
The answer is this is a test
true.
Run Code Online (Sandbox Code Playgroud)

为什么SWI-Prolog的统一都test'test'unify('test', 'this is a test').?我在回答关于SO的Prolog问题时遇到了这个问题.虽然我能够回答这个人的问题,但我无法解释这个特殊的行为,我想知道是否有其他人可以.

prolog unification unify iso-prolog

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

从常规 GUI 打开多个网格时,如何抑制“统一重复顶点”的提示

我有一个包含数百个 STL 网格的文件夹,我想使用 flatten 命令将它们合并到 meshlab 中。

我使用的是常规 GUI,当我打开文件并选择所有这些 STL 文件时,如果我想“统一重复顶点”,系统会提示我输入每个文件。

由于我有数百个,这是不可接受的。有没有办法配置软件以将我的“是”应用于它打开的所有模型?

太棒了!

vertices unify meshlab

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

在Idris中对矢量进行分区:为什么0和m + n不能统一?

我想在两个新的向量中划分一个向量.

我们无法知道单个向量的长度是多少,但结果向量的总和必须等于参数.我试图捕获此属性如下:

partition : (a -> Bool) -> Vect (m+n) a -> (Vect m a, Vect n a)
partition p [] = ([], [])
partition p (x::xs)
  = let (ys,zs) = partition p xs
  in case p xs of
    True  => (x::ys, zs)
    False => (ys, zs)
Run Code Online (Sandbox Code Playgroud)

但伊德里斯报告(指向"分区p []")在详细阐述Main.partition的左侧时:

Can't unify
        Vect 0 a
with
        Vect (m + n) a

Specifically:
        Can't unify
                0
        with
                plus m n
Run Code Online (Sandbox Code Playgroud)

为什么会这样?

对我来说,似乎很明显,如果"0 = m + n"而不是m = n = 0.如果说服伊德里斯这个怎么样?

unify idris

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

在Haskell中统一类型

关于我的考试,我有点不满意.我想通过手工应用统一算法找出这两个函数的类型:

map map
(\x -> x >>= (\y -> y))
Run Code Online (Sandbox Code Playgroud)

有人能指出我正确的方向吗?直到现在我唯一能找到的资源是维基百科条目,由于抽象程度很高,它并没有真正帮助我.

问候,谢谢.

haskell types functional-programming unify

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

Purescript - 无法统一类型

我是Purescript(以及Haskell)的新手,我遇到了一个无法统一的错误.最初我有:

newtype Domain = Domain String

newtype Keyword = Keyword String

type Result = {
        domain    :: Domain,
        occurred   :: Boolean,
        position  :: Number,
        quality   :: Number
    }

is_min_pos :: Maybe Result -> Maybe Result -> Maybe Result
is_min_pos Nothing Nothing = Nothing
is_min_pos Nothing y = y
is_min_pos x Nothing = x
is_min_pos x y = if y.position < x.position then y else x     
Run Code Online (Sandbox Code Playgroud)

这给了我错误

Cannot unify type
  Prim.Object
with type
  Data.Maybe.Maybe
Run Code Online (Sandbox Code Playgroud)

我以为是因为期待x和y是Maybe Record类型.所以要明确我将代码改为,按类型进行模式匹配.

data Result = Result { …
Run Code Online (Sandbox Code Playgroud)

unify purescript

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

Unify multiple rows in one row in R

I have a dataset like this:

a1 <- c("a","a","a", "b", "c", "c", "d", "d", "d", "d")
b1 <- c(7, 7, 7,5, 4, 4, 3, 3, 3, 3)
c1 <- c("A","B", "C", "D", "E", "F", "B", "C", "EE", "F")
m1 <- data.frame(a1, b1, c1)
Run Code Online (Sandbox Code Playgroud)

my expected result is a dataset like this:

a <- c("a","b", "c", "d")
b <- c(7, 5, 4, 3)
c <- c("ABc","D", "EF", "BCEEF")
m <- data.frame(a, b, c)
Run Code Online (Sandbox Code Playgroud)

I try this code but it doesn't work: …

r unify

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