string_split

此函数使用给定的分隔符将一个字符串分割为多个单独的字符串。分隔的字符串在新数组中返回。

分隔符字符串是导致字符串拆分的边界(单个字符或字符串)。

例如,如果字符串是"This is the string",则可以使用单个空格字符" "作为分隔符进行拆分。生成的数组将如下所示:["this","is","the","string"],无论分隔符在哪里,原始字符串都是"分割的"。

分隔符本身永远不会包含在结果字符串中。

另请参阅:string_split_ext

 

语法:

string_split(string, delimiter, [remove_empty], [max_splits]);

参数类型描述
stringString要使用给定分隔符拆分的字符串
delimiterString要使用的分隔符
remove_emptyBoolean可选 此参数确定是否应从数组中移除空数组元素(默认为 false)。对于字符串中两个分隔符紧挨着且中间没有任何分隔符的情况,它非常有用。默认情况下,在这种情况下,会向数组中添加一个空字符串(表示这两个分隔符之间的空字符串)。如果您不希望数组中包含这些空字符串,则应该将此参数设置为 true
max_splitsReal可选 此参数确定要进行的最大拆分数。之后的任何分隔符都将 max_splits 成为最后一个字符串的一部分,例如,拆分 "1|2|3|4|5",其中 max_splits 为 3,并且 | 作为分隔符将返回 ["1","2","3","4|5"]

 

返回:

Array

 

示例1:

file_path = "C:/Users/someone/Documents/data.json";

var _path_parts = string_split(file_path, "/");

show_debug_message(_path_parts);

drive_name = _path_parts[0];
file_name = array_last(_path_parts);

上面的代码首先创建存储文件路径的字符串 path。然后,它使用正斜杠 "/" 作为分隔符在路径上调用 string_split,并将其返回的数组存储在临时变量 _path_parts 中。

然后,它显示一条调试消息,其中显示了 _path_parts 数组的内容。最后,它将第一个数组条目 (驱动器号) 存储在变量 drive_name 中,将最后一个数组条目 (文件名) 存储在变量 file_name

 

示例2:

the_string = "abc|def||ghi|jkl|mno|pqrs|tuv|wxyz";
string_parts = string_split(the_string, "|", true, 5);

show_debug_message_ext("{0}, {1}, {2}, {3}, {4}", string_parts);

上面的代码创建了一个字符串 the_string ,并使用 string_split 将其拆分成总共 5 个 (值为 max_plits) 的独立字符串。通过将 remove_empty 设置为 true,首先删除空数组元素,例如 "def" 之后的分隔符和 "ghi" 之前的分隔符之间的空格。最后,它使用 show_debug_message_ext 显示调试消息,打印数组中的前五个插槽。