gpt4 book ai didi

haskell - 为什么 Data.Text.Lazy.replace 和 Data.Text.Lazy.append 不起作用?

转载 作者:行者123 更新时间:2023-12-04 10:43:15 28 4
gpt4 key购买 nike

下面的代码是使用 str1 替换字符串的三种不同方式( str2str3Data.Text.Lazy.replace ) .他们应该给出相同的输出。

import Data.Text.Lazy as DTL

str1 :: String
str1 = DTL.unpack $ DTL.replace key value text
where key = DTL.pack "<<name>>"
value = DTL.pack "Joyce"
text = DTL.pack "Hello, <<name>>."

str2 :: String
str2 = DTL.unpack $ DTL.replace key value text
where key = DTL.pack "<<" `DTL.append` DTL.pack "name"
`DTL.append` DTL.pack ">>"
value = DTL.pack "Joyce"
text = DTL.pack "Hello, <<name>>."

str3 :: String
str3 = DTL.unpack $ DTL.replace key value text
where key = DTL.pack $ "<<" ++ "name" ++ ">>"
value = DTL.pack "Joyce"
text = DTL.pack "Hello, <<name>>."

main :: IO ()
main = do putStrLn str1
putStrLn str2
putStrLn str3

但是运行程序的结果是:
Hello, Joyce.
Hello, <<name>>.
Hello, Joyce.

为什么 str2 不能正常工作?代码有什么问题吗?

最佳答案

感谢您的错误报告,伙计们。我会调查一下,然后在这里跟进我的发现。

关于haskell - 为什么 Data.Text.Lazy.replace 和 Data.Text.Lazy.append 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7186018/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com