[English Version]

MFP语言和可编程科学计算器

MFP语言简介

MFP函数

所有函数

整数操作函数

逻辑函数

统计和随机函数

三角函数

指数函数

复数函数

系统函数

数组和矩阵函数

绘图函数

表达式和微积分函数

字符串函数

双曲三角函数

排序函数

多项式函数

信号处理函数

文件操作函数

时间和日期函数

显示函数

多媒体函数

数据结构函数

数据交换文件格式函数

平台和硬件函数

并行计算函数

RTC多媒体函数

反射函数

MFP编译函数

其它函数

部署用户自定义函数

在您的应用中调用MFP

创建安卓安装包

小游戏的开发

绘制图形

使用MFP进行数学分析

使用MFP处理文件

数,字符串和数组

日期时间和系统相关

可编程科学计算器介绍

可编程科学计算器帮助:字符串函数

函数名 函数帮助信息
conv_ints_to_str

::mfp::string::conv_ints_to_str(1) :

conv_ints_to_str(int_or_array)将一个整数或者一组整数转换成一个Unicode字符串。如果只有一个整数,返回的字符串只包含一个Unicode字符,否则,返回字符串的字符数目和int_or_array中的元素数目一致。如果需要转换的整数是负数或者超出了Unicode字符集的定义范围,则被转换成整数0所对应的Unicode字符。示例包括conv_ints_to_str([20320, 22909, 25105, 22909, 22823, 23478, 22909])返回"你好我好大家好",以及conv_ints_to_str(20320)返回"你"。

conv_str_to_ints

::mfp::string::conv_str_to_ints(1) :

conv_str_to_ints(str)将一个Unicode字符串转换成一个整数数组。通常,一个Unicode字符对应一个整数(但也有可能对应两个整数,如果该Unicode字符超出了UTF-16字符集的范围。但这种情况很少出现)。如果字符串是空的,则返回一个空数组。一个示例为conv_str_to_ints("你好我好大家好")返回[20320, 22909, 25105, 22909, 22823, 23478, 22909]。

split

::mfp::string::split(2) :

split(string_input, string_regex)j将字符串string_input按照正则表达式string_regex分割为若干个子字符串并返回包含所有子字符串的数组。用户可以阅读JAVA语言的Pattern类和String.split函数的帮助文档获得更多关于正则表达式使用方法的信息。例子包括split("boo:and:foo", ":")返回["boo", "and", "foo"]以及split("boo:and:foo", "o")返回["b", "", ":and:f"]。

sprintf

::mfp::string::sprintf(1...) :

printf(format_string, ...),sprintf(format_string, ...)和fprintf(fd, format_string, ...)和C/C++中的对应函数工作方式相似。这些函数通过format_string和其后的数值参数构造出一个新的字符串,printf函数将字符串打印到标准输出,sprintf函数将字符串作为返回值返回,fprintf函数则将字符串输出到文件号为fd的文本文件。字符串format_string支持输入整数(%d、%i、%x等),浮点数(%e、%f等),字符和字符串(%c和%s)等等。用户可以在C语言的帮助文档中找到format_string的构造方法。例如,printf("Hello world!%f", 3.14)将会打印输出"Hello world!3.140000",而sprintf("%c%d", "A", 9)则返回"A9"(注意MFP不支持单一字符数据类型,所以单一的字符将会存储为一个只包括一个字符的字符串)。

sscanf

::mfp::string::sscanf(2) :

scanf(format_string),sscanf(input_from, format_string)和fscanf(fd, format_string)和C/C++中的对应函数工作方式相似。scanf读取用户的一行输入,sscanf读取字符串input_from,fscanf从文件(文件号fd)中读取文件内容。字符串format_string支持输入整数(%d、%i、%x等),浮点数(%e、%f等),字符和字符串(%c和%s)等等。用户可以在C语言的帮助文档中找到format_string的构造方法。但是,和C语言有所不同,MFP中的这些函数不需要输入用于存储读取数值的参数。所有的读取的数值将会保存在一个数组中作为返回值返回。比如,sscanf("3Hello world!", "%d%c%c%s")将会返回[3, "H", "e", "llo"](注意MFP不支持单一字符数据类型,所以单一的字符将会存储为一个只包括一个字符的字符串)。

strcat

::mfp::string::strcat(2...) :

strcat(string1, string2...)将字符串参数顺次连接在一起,返回新的连接好的字符串。本函数需要至少两个参数。

strcmp

::mfp::string::strcmp(6) :

strcmp(src, dest, src_start, src_end, dest_start, dest_end)比较源字符串src(从src_start到src_end)和目标字符串dest(从dest_start到dest_end)。如果src和dest相等返回0,如果src大于dest返回大于0的值,如果src小于dest返回小于0的值。注意字符串索引从0开始,src_end和dest_end的索引位置为最后一个被选中字符的索引位置加一。另外,最后四个参数可以省略,如果被省略,src_start和dest_start的缺省值为0,src_end和dest_end的缺省值为对应字符串的长度。

strcpy

::mfp::string::strcpy(6) :

strcpy(src, dest, src_start, src_end, dest_start, dest_end)返回将源字符串src从src_start到src_end拷贝到目标字符串dest从dest_start到dest_end的新字符串值。注意字符串索引从0开始,src_end和dest_end的索引位置为最后一个被选中字符的索引位置加一。另外,最后四个参数可以省略,如果被省略,src_start和dest_start的缺省值为0,src_end和dest_end的缺省值为对应字符串的长度。

stricmp

::mfp::string::stricmp(6) :

stricmp(src, dest, src_start, src_end, dest_start, dest_end)在忽略字母大小写的前提下比较源字符串src(从src_start到src_end)和目标字符串dest(从dest_start到dest_end)。如果src和dest相等返回0,如果src大于dest返回大于0的值,如果src小于dest返回小于0的值。注意字符串索引从0开始,src_end和dest_end的索引位置为最后一个被选中字符的索引位置加一。另外,最后四个参数可以省略,如果被省略,src_start和dest_start的缺省值为0,src_end和dest_end的缺省值为对应字符串的长度。

strlen

::mfp::string::strlen(1) :

strlen(x)返回字符串x的长度。

strsub

::mfp::string::strsub(2) :

strsub(str, start)返回字符串str的子字符串。该子字符串从字符start开始到str的最后一个字符。注意字符串的第一个字符是0号字符。

::mfp::string::strsub(3) :

strsub(str, start, end)返回字符串str的子字符串。该子字符串从字符start开始到字符end-1。注意字符串的第一个字符是0号字符。

to_lowercase_string

::mfp::string::to_lowercase_string(1) :

to_lowercase_string(x)返回数据x的打印值(所有的字母均为小写)。

to_string

::mfp::string::to_string(1) :

to_string(x)返回数据x的打印值。

to_uppercase_string

::mfp::string::to_uppercase_string(1) :

to_uppercase_string(x)返回数据x的打印值(所有的字母均为大写)。

tostring

::mfp::string::tostring(1) :

tostring(x) 返回数据x的打印值。

trim

::mfp::string::trim(1) :

trim(string),trim_left(string)和trim_right(string)从字符串的两边或者一边删除任何一个ASCI值小于等于空白字符(' ')的字符。具体说来,trim从左右两边删除任何一个ASCI值小于等于空白字符(' ')的字符,直到左边和右边都遇到了一个ASCI值大于空白字符(' ')的字符;trim_left从左边删除任何一个ASCI值小于等于空白字符(' ')的字符,直到遇到了一个ASCI值大于空白字符(' ')的字符;trim_right从右边删除任何一个ASCI值小于等于空白字符(' ')的字符,直到遇到了一个ASCI值大于空白字符(' ')的字符。例子包括trim(" \n hello world ") (返回"hello world"), trim_left(" \n hello world "), (返回"hello world ")以及trim_right(" \n hello world ") (返回" hello world")。

trim_left

::mfp::string::trim_left(1) :

trim(string),trim_left(string)和trim_right(string)从字符串的两边或者一边删除任何一个ASCI值小于等于空白字符(' ')的字符。具体说来,trim从左右两边删除任何一个ASCI值小于等于空白字符(' ')的字符,直到左边和右边都遇到了一个ASCI值大于空白字符(' ')的字符;trim_left从左边删除任何一个ASCI值小于等于空白字符(' ')的字符,直到遇到了一个ASCI值大于空白字符(' ')的字符;trim_right从右边删除任何一个ASCI值小于等于空白字符(' ')的字符,直到遇到了一个ASCI值大于空白字符(' ')的字符。例子包括trim(" \n hello world ") (返回"hello world"), trim_left(" \n hello world "), (返回"hello world ")以及trim_right(" \n hello world ") (返回" hello world")。

trim_right

::mfp::string::trim_right(1) :

trim(string),trim_left(string)和trim_right(string)从字符串的两边或者一边删除任何一个ASCI值小于等于空白字符(' ')的字符。具体说来,trim从左右两边删除任何一个ASCI值小于等于空白字符(' ')的字符,直到左边和右边都遇到了一个ASCI值大于空白字符(' ')的字符;trim_left从左边删除任何一个ASCI值小于等于空白字符(' ')的字符,直到遇到了一个ASCI值大于空白字符(' ')的字符;trim_right从右边删除任何一个ASCI值小于等于空白字符(' ')的字符,直到遇到了一个ASCI值大于空白字符(' ')的字符。例子包括trim(" \n hello world ") (返回"hello world"), trim_left(" \n hello world "), (返回"hello world ")以及trim_right(" \n hello world ") (返回" hello world")。