给定一个子串定义
<Apply function="substring">
<FieldRef field="Input"/>
<Constant>1</Constant>
<Constant>2</Constant>
</Apply>
如果输入字符串“helloworld”会发生什么,官方规范是什么?
是不允许的,还是应该发生其他事情?
给定一个子串定义
<Apply function="substring">
<FieldRef field="Input"/>
<Constant>1</Constant>
<Constant>2</Constant>
</Apply>
如果输入字符串“helloworld”会发生什么,官方规范是什么?
是不允许的,还是应该发生其他事情?
请参考PMML 内置函数 "substring"的规范,它基于XQuery 内置函数 "substring"。在 Java 中,您的表达式转换为以下input.substring((1 - 1), (1 - 1) + 2)
.
需要注意的重要一点是,在 PMML 和 XQuery 中,字符串的索引从位置1
(不是0
)开始。此外,没有StringIndexOutOfBoundsException
使用此功能时的情况。如果您有兴趣获取字符串的其余部分,则可以传递一个任意大的数字作为length
参数。