[英]=~ function arguments in reverse order
Bool > "my left foot" =~ "foo" :: Bool
=~
是Text.Regex.Posix
包中的中缀运算符,在这里,目标字符串在左侧,模式字符串在右侧。 在这里, =~
对我有意义。
但在这儿,
readIp = untilM (=~ "[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}")
(putStr "Enter IP address: " >> getLine)
=~
仅使用其正确的参数进行处理,并提供给直到untilM
target string
作为最后一个参数给出。 untilM
如何确保=~
在其左侧传递目标字符串,在其右侧传递模式字符串?
这就是操作员部分的工作方式。
(=~) = \x y -> x =~ y
(x =~) = \y -> x =~ y
(=~ y) = \x -> x =~ y
助记符:当您有(x =~ y)
并取出x
,就剩下( =~ y)
。
如果要读取正则表达式并将其与常量字符串进行匹配,则可以使用另一部分:
untilM ("foo" =~) (putStr "Enter regex: " >> getLine)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.