GHC 不知道如何显示类型 a。
data FunctorExample a = FunctorExample { val1 :: a,
val2 :: String
} deriving (Show)
instance Functor FunctorExample where
fmap f (FunctorExample x y) = FunctorExample (f x) (y ++ " " ++ show x)
Run Code Online (Sandbox Code Playgroud)
我尝试了很多事情,包括:在数据中设置类型约束(现已弃用),并使用 {-# LANGUAGE InstanceSigs #-} 为 fmap 添加约束并添加下面建议的类型签名,但没有成功(虽然我的类型签名可能有缺陷......)。
* No instance for (Show a) arising from a use of `show'
Possible fix:
add (Show a) to the context of
the type signature for:
fmap :: forall a b.
(a -> b) -> …Run Code Online (Sandbox Code Playgroud) 我需要在一个大文本文件中替换所有出现的事件,例如'yw234DV w-23-sDf wef23s-d-f'使用相同的字符串但用下划线而不是引号内的所有空格的空格,而不用下划线替换引号外的任何空格。
我正在尝试在 vim 中找到替代解决方案,但也非常感谢 sed 解决方案。每个引号分隔的字符串中的标记数量可能会有所不同。
我一直在 vim 中使用一些正则表达式,但它们非常初级,似乎缺少我需要的东西。
我目前的尝试:
%s/'{[:alnum:] }*/'\0\_/g
Run Code Online (Sandbox Code Playgroud)
我正在尝试对此进行更改。
这与我的问题最相似,尽管它是 Java: 替换引号内的空格
样本输入:
'wiUEF7-gvouw ow wo24-RTeih we', 'yt23IT iug-76'
Run Code Online (Sandbox Code Playgroud)
示例输出:
'wiUEF7-gvouw_ow_wo24-RTeih_we', 'yt23IT_iug-76'
Run Code Online (Sandbox Code Playgroud)