EA编程教程:全面解析字符函数应用
在EA编程中,字符函数是处理字符串类型数据的一组重要工具。本文为您详细介绍这些函数的用法与示例。
StringConcatenate
StringFind
StringDLSM外汇GetChar
StringLen
StringSetChar
StringSubstr
StringTrimLeft
StringTrimRight
string StringConcatenate( ...)
该函数用于将多个数据转换为字符串形式并返回。参量可以为任意类型,总数不得超过64个字符。
其传送规则与应用于Print()、Alert()和Comment()函数的参量相同。函数返回的是参量连接后的字符串结果。
当字符串使用(+)连续添加时,使用StringConcatenate()运行速度更快且节省存储空间。
参量:
... - 所有值由逗号分开,可以是64个参量。
示例:
string text;
text=StringConcatenate("Account free margin is ", AccountFreeMargin(), "Current time is ", TimeToStr(TimeCurrent()));
// 文本="Account free margin is " + AccountFreeMargin() + "Current time is " + TimeToStr(TimeCurrent())
Print(text);
int StringFind( string text, string matched_text, void start)
用于搜索子字符串。如果找到,返回子字符串在原始字符串中的起始位置;若未找到,则返回-1。
参量:
text - 被搜索的字符串。
matched_text - 需要搜索的子字符串。
start - 搜索的起始索引位置。
示例:
string text="快速的棕色小狗跨越过懒惰的狐狸";
int index=StringFind(text, "小狗跨越", 0);
if(index!=16)
Print("oops!");
int StringGetChar( string text, int pos)
用于返回字符串中指定位置的字符代码。
参量:
text - 字符串。
pos - 字符位置,范围从0到StringLen(text)-1。
示例:
int char_code=StringGetChar("abcdefgh", 3);
// 取出字符 'c' 的代码是 99
int StringLen( string text)
用于返回字符串中的字符数量。
参量:
text - 需要计算长度的字符串。
示例:
string str="some text";
if(StringLen(str)<5) return(0);
string StringSetChar( string text, int pos, int value)
用于返回一个复本,其中指定位置的字符代码已被修改。
参量:
text - 需要修改的字符串。
pos - 字符位置,范围从0到StringLen(text)。
value - 新的ASCII代码。
示例:
string str="abcdefgh";
string str1=StringSetChar(str, 3, 'D');
// str1 is "abcDefgh"
string StringSubstr( string text, int start, void length)
用于从字符串的指定位置开始提取子字符串。如果提取成功,返回该子字符串的副本;否则返回空字符串。
参量:
text - 需要提取的字符串。
start - 提取的起始索引,范围从0到StringLen(text)-1。
length - 提取的长度。如果该值大于或等于0,或未指定,则提取到字符串末尾。
示例:
string text="快速的棕色小狗跨越过懒惰的狐狸";
string substr=StringSubstr(text, 4, 5);
// 提取的子字符串是"快速"
string StringTrimLeft( string text)
用于移除字符串左侧的空格和制表符。如果成功,返回修剪后的副本;否则返回空字符串。
参量:
text - 需要修剪左侧的字符串。
示例:
string str1=" Hello world ";
string str2=StringTrimLeft(str1);
// 修剪后str2将是 "Hello world "
string StringTrimRight( string text)
用于移除字符串右侧的空格和制表符。如果成功,返回修剪后的副本;否则返回空字符串。
参量:
text - 需要修剪右侧的字符串。
示例:
string str1=" Hello world ";
string str2=StringTrimRight(str1);
// 修剪后str2将是 " Hello world"
