答应空符号?确认函数在遇到多个相邻分隔符时是否能辨认符号。如答应空符号?的值为FALSE(默许值),多个相邻的分隔符能够分隔输入字符串中的两个符号。如答应空符号?的值为TRUE,在每个相邻分隔符对之间都将回来空的符号字符串。 | |||||||||||||||
输入字符串是要查找符号的字符串。 | |||||||||||||||
偏移量是输入字符串中开端扫描的点。默许值为0,即字符串的开端方位。 | |||||||||||||||
运算符是字符串数组,如输入字符串包括字符串数组,即便它们没有被分隔符分隔,函数仍将其视为符号。如输入字符串的一部分匹配多个运算符,函数将把最长的匹配作为符号。例如,如>、=和>=被界说为运算符,输入字符串4>=0将生成>=作为下一个符号字符串,偏移量为1。
运算符中的字符串或许包括下列特别格局代码,用于将整个数字作为单个符号进行扫描。
|
|||||||||||||||
分隔符该字符串数组可作为符号分隔符。分隔符中的字符串不会作为符号回来,而是用于分隔相邻的符号。默许的分隔符为空格字符:空格、制表符、换行符和回车。 |
|||||||||||||||
运用缓存中的分隔/运算数据?是可选的高档输入端。如没有连线,符号字符串仍为正常状况。经过运用缓存中的分隔/运算数据?能够明显改善字符串解析的功用。在符号字符串第一次履行时,应将运用缓存中的分隔/运算数据?设置为FALSE,在接下来的履行中,只需运算符和分隔符没有改动,就将其设置为TRUE。运用移位寄存器并将常量FALSE作为输入,TRUE作为输出,可确保运算符和分隔符在循环履行中没有改动的情况下正确运转。如运用缓存中的分隔/运算数据?的值为TRUE,而且运算符或分隔符在前次履行时发生了改动,将发生过错的成果。如运算符和分隔符没有连线或连线至程序框图常量,则无需连线运用缓存中的分隔/运算数据?就可得到优化的功用。 |
|||||||||||||||
字符串输出回来无改动的输入字符串。 |
|||||||||||||||
符号后偏移量确认在输入字符串中的点,这些点紧随最近找到的符号和恣意的分隔符。任何关于输入字符串的后续查找都从该偏移量开端。如偏移量小于0或大于输入字符串中的字符数,或许现已抵达字符串的结尾,则符号后偏移量为-1。 |
|||||||||||||||
符号字符串是匹配的符号。它能够是运算符中的字符串或输入字符串中坐落分隔符间的恣意文本字符串。 |
|||||||||||||||
符号索引如符号字符串匹配运算符中的某个元素,则值为符号字符串在运算符中的索引。如符号字符串是其它字符串,符号索引将回来-1。如函数在抵达输入字符串结尾后,仍未找到有用的运算符,符号索引将回来-2。 |
据此,我写了一个简略的小程序。如下: