n
描述
可以使用 "INSERT" 指令通过输入参数 "IN2" 将一个字符或字符串插入到输入参数 "IN1" 的字符串中,结果会以字符串形式显示在输出参数 "OUT"。通过指定参数 "P" 的数值来确定从字符串的哪个位置的字符之后插入字符。n
图 01n
在参数化 "INSERT" 指令时必须注意下列情况。n
- 如果参数 "P" 的数值大于输入参数 "IN1" 字符串的长度,那么输入参数 "IN2" 中的字符会显示在输入参数 "IN1" 字符串的最后一个字符。
图 02n
- 如果参数 "P" 的值是 0,那么输入参数 "IN2" 中的字符会显示在输入参数 "IN1" 字符串的第一个字符之前。
图 03n
- 如果参数 "P" 的值是负数,那么在输出参数 "OUT" 也会显示一个空字符串。
图 04n
- 如果结果字符串的长度超过了输出参数 "OUT" 定义的字符串变量的长度,那么结果字符串被限制为在有效长度字符串。
图 05n
示例
同样可以使用 "INSERT" 语句复制字符串变量。图 06 举例说明了如何改变含有5个字符的字符串中的1个字符 ("abcde" => "abxde")。n
- 调整字符串变量的长度正好等于想要转换的字符串 (例如,String[5])。n
- 位于输入参数 "IN2" 的字符串必须和输入参数 "IN1" 的字符串一致。 n
- 删除参数 "IN2" 字符串的第一个字符。n
- 修改字符串中想要转换的字符 (例如,"x")。
图 06n
由于定义"P=1",参数 "IN2" 的字符串插入到参数 "IN1" 的字符串的第一个字符后面,结果字符串应为 "abxdebcde"。然而,由于位于输出参数 "OUT"的字符串定义为5个字符长度,所以这个字符串被限定为 "abxde"。
图 07
注意
SIMATIC S7-1200 可以直接在 "IN1"和 "IN2" 输入字符串。SIMATIC S7-300 ,需要输入字符串类型的 DB 变量。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc331038.html