您好!欢迎光临工博士商城

库卡机器人维保服务商

产品:157    

咨询热线:18621383635(微信同号)

QQ QQ
您当前的位置:首页 » 库卡机器人维修保养售后资料 » 库卡机器人维修 库卡机器人编程之字符串处理函数
产品分类
库卡机器人维修保养售后资料
库卡机器人维修 库卡机器人编程之字符串处理函数
发布时间:2020-02-16        浏览次数:538        返回列表

在常规计算机语言(如:C#)中,字符变量的值是放在单引号内,字符串变量的值则是放在双引号内。而在库卡机器人KRL语言中,没严格意义上的字符串,只有基本字符数据类型,字符变量的值是放在双引号内,如果需要表示表示字符串,这时则需要适用字符数组来实现。本文主要以字符串处理函数展开的,接下来列出常用的系统自带的字符串处理函数。

一.字符串变量转换其他数据类型:
用 StrTo[…] 类型的函数可以将字符串变量转换为另一个数据类型,下表列出系统自带的字符串转换为其他数据类型的函数:



具体语法( 以StrToAxis函数为例):
       success = StrToAXIS(string, value)
比如:
       DECL BOOL success, value
       success=StrToBOOL("TRUE", value) ;Value=TRUE

二.字符串变量声明时的长度
函数StrDeclLen() 根据其在程序声明部分中的声明确定字符串变量的长度。
语法:
       Length = StrDeclLen(StrVar[])


比如:
       CHAR ProName[24]
       INT StrLength
       StrLength = StrDeclLen(ProName[]) ;strLength=24

三.字符串变量初始化后的长度
与已在程序初始化部分确定的一样,函数 StrLen() 确定字符串变量的字符串长度。
语法:
       Length = StrLen(StrVar[])
比如:
       CHAR ProName[24]
       INT StrLength
       ProName[24]="Pick_Part"
       StrLength = StrLen(ProName[]) ;StrLength=9

四.删除字符串变量的内容

函数 StrClear() 用于删除字符串变量的内容。
语法:
      Result = StrClear(StrVar[])
比如:
       IF (NOT StrClear($Loop_Msg[])) THEN
       HALT
       ENDIF

五.扩展字符串变量
用函数StrAdd() 可以给字符串变量扩展其他字符串变量的内容。
语法:
Sum = StrAdd(StrDest[],StrToAdd[])
比如:
       DECL CHAR A[50], B[50]
       DECL INT AB
       A[] = "This is an "
       B[] = "example"
       AB = StrAdd(A[],B[])
       ;A[]="This is an example"
       ;AB=18

六.搜索字符串变量
用函数StrFind() 可以搜索字符串变量的字符串。
语法:
Result = StrFind(StartAt, StrVar[], StrFind[], CaseSens)
比如:
       DECL CHAR A[5]
       DECL INT B
       A[]="ABCDE"
       B = StrFind(1, A[], "AC", #CASE_SENS) ;B=0
       B = StrFind(1, A[], "a", #NOT_CASE_SENS) ;B=1
       B = StrFind(1, A[], "BC", #Case_Sens) ;B=2
       B = StrFind(1, A[], "bc", #NOT_CASE_SENS) ;B=2

七.比较字符串变量
用函数StrComp() 可以比较两个字符串变量。
语法:
Result= StrComp(StrComp1[], StrComp2[], CaseSens)
比如:
       DECL CHAR A[5]
       DECL BOOL B
       A[]="ABCDE"
       B = StrComp(A[], "ABCDE", #CASE_SENS) ;B=TRUE
       B = StrComp(A[], "abcde", #NOT_CASE_SENS) ;B=TRUE
       B = StrComp(A[], "abcd", #NOT_CASE_SENS) ;B=FALSE
       B = StrComp(A[], "acbde", #NOT_CASE_SENS) ;B=FALSE

八.复制字符串变量
用函数StrCopy() 可以将字符串变量的内容复制到另一个字符串变量。
语法:
Result = StrCopy(StrDest[],StrSource[])
比如:
       DECL CHAR A[25], B[25]
       DECL BOOL C
       A[] = ""
       B[] = "Example"
       C = StrCopy(A[], B[])
       ;A[]="Example"
       ;C=TRUE

九.小结:
前面主要以系统自带的字符串处理函数展开的,比如数据转换的函数,用户也可以自己通过SREAD指令来实现,这里就不一一详述。另外,用户也可以扩展自己的函数或子程序库来实现一些功能,一便日后快速使用,例如:字符串分割/ 字符串截取/其他数据类型转换字符串/判断字符串中的空格等。

了解更多:库卡机器人维修库卡机器人配件



 

联系热线:18621383635(微信同号)   联系人:申密 联系地址:上海市宝山区富联一路98弄6号

技术和报价服务:星期一至星期六8:00-22:00 库卡机器人维保服务商