[英]Haskell Regex - Couldn't match type ‘[Char]’ with ‘IO () error
在 Haskell 中,我有一個程序可以從頁面上刮下html 並將其存儲在一個名為 'html' 的變量中,該變量是類型 IO ()。 然后我想生成一個 String 類型的列表,該列表通過來自該網頁的模式保存所有匹配項。
下面這兩行從模式生成匹配列表
let pattern = "..." --note, regex is omited
html =~ pattern :: String -> IO String
我收到錯誤:
我想做的是:
let pattern = "..."
let matches_list = html =~ pattern :: String -> IO String
其中字符串類型的matches_list 是匹配列表。
編輯
我從這里得到的實際刮板的工作原理如下:
想象一下 'src' 是我的 'html' 變量
您正在嘗試將正則表達式匹配器的結果轉換為一個接受字符串並返回IO String
的函數,但根據您的描述,聽起來您寧願將其轉換為字符串列表,盡管您尚未指定您正在使用的正則表達式庫,您的修復可能就像更改此內容一樣簡單:
let matches_list = html =~ pattern :: String -> IO String
進入這個:
let matches_list = html =~ pattern :: [String]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.