Elm - Chuỗi
Một chuỗi các ký tự Unicode được gọi là một Chuỗi. Trong Elm, các chuỗi được đặt trong dấu ngoặc kép "" . Chuỗi là một đoạn văn bản như hình dưới đây.
> "TutorialsPoint"
"TutorialsPoint" : String
> location = "Hyderabad" --variable
"Hyderabad" : String
> location
"Hyderabad" : String
>
Hàm chuỗi
Một số hàm phổ biến có thể được sử dụng để truy vấn hoặc thao tác các giá trị chuỗi được đưa ra bên dưới. Sử dụng REPL để thử các ví dụ dưới đây.
Sơ không | phương pháp | Sự miêu tả |
---|---|---|
1 | isEmpty: String -> Bool | chuỗi kiểm tra trống |
2 | đảo ngược: Chuỗi -> Chuỗi | đảo ngược một chuỗi đầu vào |
3 | chiều dài: String -> Int | trả về độ dài số nguyên |
4 | nối thêm: Chuỗi -> Chuỗi -> Chuỗi | nối hai chuỗi và trả về một chuỗi mới |
5 | append: String -> Sconcat: List String -> String | nối một danh sách các chuỗi và trả về một chuỗi mới |
6 | split: String -> String -> List String | tách một chuỗi đầu vào bằng dấu phân tách đã cho, trả về một danh sách chuỗi |
7 | lát cắt: Int -> Int -> String -> String | trả về một chuỗi con cho trước một chỉ mục bắt đầu, kết thúc và chuỗi đầu vào |
số 8 | chứa: Chuỗi -> Chuỗi -> Bool | trả về true nếu chuỗi thứ hai chứa chuỗi thứ nhất |
9 | toInt: String -> Result.Result String Int | phân tích cú pháp một chuỗi thành số nguyên |
10 | toInt: String -> Result.Result String Int | phân tích cú pháp một chuỗi thành số nguyên |
11 | toFloat: String -> Result.Result String Float | phân tích cú pháp một chuỗi để thả nổi |
12 | fromChar: Char -> String | tạo một chuỗi từ một ký tự nhất định. |
13 | toList: String -> List Char | chuyển đổi chuỗi thành danh sách các ký tự |
14 | fromList: Danh sách Char -> Chuỗi | chuyển đổi danh sách các ký tự thành một chuỗi |
15 | toUpper: String -> String | chuyển đổi chuỗi đầu vào thành chữ hoa |
16 | trim: Chuỗi -> Chuỗi | loại bỏ khoảng trắng trên cả hai mặt của một chuỗi. |
17 | bộ lọc: (Char -> Bool) -> String -> String | bộ lọc bộ ký tự từ chuỗi đầu vào |
18 | bản đồ: (Char -> Char) -> String -> String | biến đổi mọi ký tự trong một chuỗi đầu vào |
isEmpty
Hàm này có thể được sử dụng để xác định xem một chuỗi có trống hay không. Hàm này trả về giá trị True nếu Chuỗi được cung cấp trống.
Cú pháp
String.isEmpty String_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.isEmpty
<function> : String -> Bool
Chữ ký của hàm hiển thị Bool là kiểu trả về và kiểu đầu vào là Chuỗi -
Hình minh họa
> String.isEmpty ""
True : Bool
> String.isEmpty "Tutorialspoint"
False : Bool
> location = "Hyderabad"
"Hyderabad" : String
> String.isEmpty location
False : Bool
đảo ngược
Hàm này đảo ngược một chuỗi.
Cú pháp
String.reverse String_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.reverse
<function> : String -> String
Chữ ký của hàm hiển thị Chuỗi là kiểu trả về và kiểu đầu vào là Chuỗi -
Hình minh họa
> String.reverse "TutorialsPoint"
"tnioPslairotuT" : String
chiều dài
Hàm này trả về độ dài của một chuỗi.
Cú pháp
String.length String_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.length
<function-> : String -> Int
Chữ ký của hàm hiển thị Int là kiểu trả về và kiểu đầu vào là Chuỗi.
Hình minh họa
> String.length "Mohtashim"
9 : Int
nối thêm
Hàm này trả về một chuỗi mới bằng cách nối hai chuỗi.
Cú pháp
String.append String_value1 String_value2
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.append
<function-> : String -> String -> String
Chữ ký của hiển thị hai tham số đầu vào Chuỗi và một tham số đầu ra chuỗi
Hình minh họa
> String.append "Tutorials" "Point"
TutorialsPoint : String
kết hợp
Hàm này trả về một chuỗi mới bằng cách nối nhiều chuỗi thành một.
Cú pháp
String.concat [String1,String2,String3]
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.concat
<function> : List String -> String
Chữ ký của hiển thị Danh sách tham số đầu vào Chuỗi và kiểu trả về Chuỗi
Hình minh họa
> String.concat ["Hello","Tutorials","Point"]
HelloTutorialsPoint : String
tách ra
Hàm này phân tách một chuỗi bằng dấu phân cách đã cho.
Cú pháp
String.split string_seperator String_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.split
<function> : String -> String -> List String
Chữ ký của hiển thị hai tham số Chuỗi đầu vào và đầu ra dưới dạng danh sách kiểu chuỗi.
Hình minh họa
> String.split "," "Hello,Tutorials,Point"
["Hello","Tutorials","Point"] : List String
lát
Hàm này trả về một chuỗi con cho trước chỉ số bắt đầu và kết thúc. Các chỉ mục phủ định được lấy bắt đầu từ cuối danh sách. Giá trị của chỉ mục bắt đầu từ số không.
Cú pháp
String.slice start_index end_index String_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.slice
<function> : Int -> Int -> String -> String
Chữ ký của hiển thị ba tham số đầu vào và một kiểu trả về.
Hình minh họa
> String.slice 0 13 "TutorialsPoint"
"TutorialsPoin" : String
chứa đựng
Hàm này trả về giá trị True nếu chuỗi thứ hai chứa chuỗi thứ nhất.
Cú pháp
String.contains string1 string2
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.contains
<function> : String -> String -> Bool
Chữ ký của hiển thị kiểu trả về bool và hai tham số đầu vào
Hình minh họa
> String.contains "Point" "TutorialsPoint"
True : Bool
toInt
Hàm này chuyển đổi một chuỗi thành một int.
Cú pháp
String.toInt string_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.toInt
<function> : String -> Result.Result String Int
Vì toInt có thể trả về lỗi, kiểu trả về là Kết quả, là Chuỗi hoặc Int.
Hình minh họa
> String.toInt "20"
Ok 20 : Result.Result String Int
> String.toInt "abc"
Err "could not convert string 'abc' to an Int" : Result.Result String Int
toFloat
Hàm này chuyển đổi một chuỗi thành một float.
Cú pháp
String.toFloat string_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.toFloat
<function> : String -> Result.Result String Float
Vì toFloat có thể trả về lỗi, nên kiểu trả về là Kết quả, là Chuỗi hoặc Pha nổi.
Hình minh họa
> String.toFloat "20.50"
Ok 20.5 : Result.Result String Float
> String.toFloat "abc"
Err "could not convert string 'abc' to a Float" : Result.Result String Float
fromChar
Hàm này tạo một chuỗi từ một ký tự nhất định.
Cú pháp
String.fromChar character_value
Để kiểm tra chữ ký của loại hàm sau trong elm REPL -
> String.fromChar
<function> : Char -> String
Chữ ký hiển thị Chuỗi là kiểu trả về và đầu vào là kiểu Char
Hình minh họa
> String.fromChar 'c'
"c" : String
liệt kê
Hàm này chuyển đổi một chuỗi thành một danh sách các ký tự.
Cú pháp
String.toList string_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.toList
<function> : String -> List Char
Hàm hiển thị chữ ký trả về một danh sách các ký tự và nhận đầu vào là một chuỗi.
Hình minh họa
> String.toList "tutorialspoint"
['t','u','t','o','r','i','a','l','s','p','o','i','n','t'] : List Char
fromList
Hàm này chuyển đổi một danh sách các ký tự thành một Chuỗi.
Cú pháp
String.fromList list_of_characters
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.fromList
<function> : List Char -> String
Hàm hiển thị chữ ký trả về một danh sách các ký tự và nhận đầu vào là một chuỗi.
Hình minh họa
> String.fromList ['h','e','l','l','o']
"hello" : String
toUpper
Hàm này chuyển đổi một chuỗi thành tất cả các chữ hoa.
Cú pháp
String.toUpper String_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.toUpper
<function> : String -> String
Hình minh họa
> String.toUpper "hello"
"HELLO" : String
toLower
Hàm này chuyển đổi một chuỗi thành tất cả các chữ thường.
Cú pháp
String.toLower String_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.toLower
<function> : String -> String
Hình minh họa
> String.toLower "AbCd"
"abcd" : String
cắt tỉa
Hàm này loại bỏ khoảng trắng trên cả hai mặt của một chuỗi.
Cú pháp
String.trim String_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.trim
<function> : String -> String
Hình minh họa
> String.trim "tutorialspoint "
"tutorialspoint" : String
bộ lọc
Hàm này lọc một tập hợp các ký tự từ Chuỗi đầu vào. Chỉ giữ lại những ký tự vượt qua bài kiểm tra.
Cú pháp
String.filter test_function string_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.filter
<function> : (Char -> Bool) -> String -> String
Chữ ký cho thấy bộ lọc nhận hai tham số đầu vào và trả về một Chuỗi. Tham số đầu tiên là một hàm, có đầu vào Char và trả về Bool.
Hình minh họa
Trong ví dụ, chúng ta đang chuyển Char.isUpper làm tham số cho phương thức lọc; nó trả về tất cả các ký tự viết hoa như hình dưới đây.
> import Char
> String.filter Char.isUpper "abcDEF"
"DEF" : String
bản đồ
Hàm này nhận một Chuỗi và biến đổi mọi ký tự trong một chuỗi.
Cú pháp
String.filter mapping_function string_value
Để kiểm tra chữ ký của hàm, hãy nhập thông tin sau vào elm REPL -
> String.map
<function> : (Char -> Char) -> String -> String
Hình minh họa
Ví dụ sau thay thế ký tự o bằng @ -
> String.map (\c -> if c == 'o' then '@' else c) "TutorialsPoint"
"Tut@rialsP@int" : String