繁体   English   中英

=〜函数参数以相反的顺序

[英]=~ 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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM