Haskell中的左右字符串对齐

我习惯于使用 Python 并且对 Haskell 相当陌生。

我想知道 Haskell 中的字符串如何左/右对齐,以及 Haskell 中是否存在与以下 Python 函数等效的函数:

str = "Hello stackoverflow."

# Printing a left aligned string  
print (str.ljust(40)) 

# Printing a right aligned string  
print (str.rjust(40))

回答

通常用于文本处理,Text使用而不是Strings,因为Text适用于未装箱的unicode 字符数组。可以用justifyLeft :: Int -> Char -> Text -> Text和来证明justifyRight :: Int -> Char -> Text -> Text。例如:

{-# LANGUAGE OverloadedStrings #-}

import Data.Text(Text, justifyLeft, justifyRight)
import Data.Text.IO as TI

myText :: Text
myText = "Hello stackoverflow."

main :: IO ()
main = do
    TI.putStrLn (justifyLeft 40 ' ' myText)
    TI.putStrLn (justifyRight 40 ' ' myText)

' '这里是作为“填充字符”的字符。例如,如果我们使用justifyLeft 40 '#' myTextandjustifyRight 40 '#' myText代替,我们得到:

Hello stackoverflow.####################
####################Hello stackoverflow.


以上是Haskell中的左右字符串对齐的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>