- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在 Data.String.Combinators
中搜索 unlines
函数的逆函数,unlines
通过附加换行符来连接行:
unlines::(Monoid s, IsString s) => [s] -> s
unlines
的逆应该是 lines
,它在换行符上分割一个字符串对象:
lines::IsString s => s -> [s]
对hoogle进行广泛搜索和 hayoo ,还有 split
、splitOn
等的变体,什么也不返回。函数 unlines
的命名甚至暗示了其逆 lines
的存在。所有 Data.String
、Data.Text
、Data.ByteString
等都有一个 lines
函数,但没有泛型实现似乎存在。
令我感到奇怪的是,这样的函数不应该存在。这有什么根本原因吗?
背景:由于 String
仍然被广泛使用,尽管每个人(?)都知道它不应该在几乎所有情况下使用,但我认为这会很好用 IsString s => s -> s
或 (IsString s, Monoid s) => s 替换我自己的
。这样至少我不会造成对 String->String
和类似函数-> sString
的偏见,同时仍然允许 String
易于使用。
现在我很清楚,仅提供 fromString
的 IsString
类型类对于这样的 lines
函数来说是不够的。所以问题变成了:需要哪些属性以及什么类型类(如果有的话)“封装”它们?
最佳答案
IsString a
仅提供从 String
到 a
的转换。一般来说,这使得编写有意义的行
变得不可行。
例如,这是一个简单的案例。
data T = T
instance IsString T where
fromString _ = T
instance Monoid T where
mempty = T
mappend _ _ = T
我们无法真正定义 lines::T -> [T]
:该函数唯一可能的(非底部)结果是 [T,T 形式的列表,T,...,T]
几乎没有用,因为它与 fromString
的输入完全无关。
如果可能,我建议使用更丰富的类型类来支持 lines
函数。
关于string - 通用 Haskell 'stringy' 函数,或者:lines::IsString a => a -> [a] 在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48101740/
我正在尝试完成一些绘图,但不幸的是它会产生此错误以及一个空白窗口: ggplot(dt, aes(B, C),) + geom_point() + facet_grid(. ~ A) Error in
我正在使用 RStudio 在远程服务器上工作。此服务器无法访问 Internet。我想安装包“stringi”。我看过这个 tackoverflow article ,但是每当我使用命令时 inst
我最近开始处理自定义序列化/反序列化:https://stackoverflow.com/a/63846824/129805 我只想对JSON和RON使用此自定义的“字符串式”序列化(和des),而对
我正在尝试使用 renv::install() 安装包 stringi。 一般情况下,我会用 install.packages('stringi', configure.vars='ICUDT_DIR
我正在尝试调用 knit这告诉我它需要更新版本的 rmarkdown需要包stringi . 安装时stringi我收到以下错误: > install.packages("stringi") Inst
我正在尝试在 R 中安装 stringi 包,但安装从未完成。下载并编译后,我收到以下消息: Error in dyn.load(file, DLLpath = DLLpath, ...) : u
系统:macOS Sierra 10.12.6 Xcode:9.2 (2347) R:3.4.0 RStudio:1.1.383 我正在尝试安装最新版本的 stringi (1.1.6)。自从 Xco
我有数据,其中每一行都是一个人。我想制作一个随机生成的唯一 ID,以便在分析中识别它们。 这是一个示例数据框 df % mutate(UniqueID = do.call(paste0, Map(
我现在使用 stringi 包有一段时间了,一切正常。 我最近想将一些正则表达式放入一个函数中,并将该函数存储在一个单独的文件中。如果函数是从脚本加载的,代码就可以正常工作,但是当它被加载时,我没有得
目的 我试图使用 vif()来自 car 的函数R 包。 初始错误消息 当我第一次执行 vif(X) ,弹出错误信息如下: Error in vif(mod1) : could not find fu
我在 R 中有一个大型数据框,其中有一列看起来像这样,其中每个句子都是一行 data <- data.frame( datalist = c("anarchism is a wiki/polit
下一个我要断了string成句: library(NLP) # NLP_0.1-7 string 快速)和 openNLP (-> 质量)? 最佳答案 ICU 中的文本边界(在这种情况下,句子边界
请帮我在R中安装stringr和stringi包。结果是: install.packages("stringi") Installing package into ‘C:/Users/kozlovpy
我有一些字符串 string <- "abbccc" 我想将同一个字母的链替换为一个字母和该字母的出现次数。所以我想要这样的东西:“ab2c3” 我使用 stringi 包来做这个,但它并没有完全按照
例如,我有一些字符串实际上是用于创建表格的 HTML 代码 z MESA HIGH VICTORIES Team Score Parkfield High Demon
我们正在努力使一些 R 代码在生产环境中工作,作为其中的一部分,我们正在安装一些 R 包,如下所示: # Default directories and mirrors WORKING_DIR 应
最近使用 Appveyor 的构建不再有效。它在实际构建程序之前失败了,因为不知何故无法安装包 stringi。 本地一切正常,但我需要 Appveyor 的解决方法。有人有解决此问题的解决方案吗?
我想知道为什么我通过使用 gsub 和 stringi 获得两个不同的输出字符串。元字符“.”不包括 stringi 中的新行? stringi 是否“逐行”读取? 顺便说一下,我没有找到任何方法来使
在 Windows 10 上,RStudio。我试过使用命令 install.packages,但它总是出现以下消息: > install.packages ("stringi") There is
在 Windows 10 上,RStudio。我试过使用命令 install.packages,但它总是出现以下消息: > install.packages ("stringi") There is
我是一名优秀的程序员,十分优秀!