StringUtil内嵌对象
StringUtil内嵌对象提供了一系列字符串操作方法,例如从一个字符串中截取一个子字符串。
StringUtil内部是由org.apache.commons.lang3.StringUtils实现的,具体使用方法请参考apache commons文档。
举例1
假设变量a为字符串No.0010,返回“.”后面的子字符串,EL表达式如下:
#{StringUtil.substringAfter(a,".")}
举例2
假设变量b为字符串No,0020,返回“,”后面的子字符串,EL表达式如下:
#{StringUtil.split(b,',')[1]}
举例3
当前一节点的输出结果是一个字段时,输出结果如[["000"]]所示。第二个节点引用第一个节点的输出,此时可通过EL表达式分割字符串结果,获取前一节点输出的字段值。
#{StringUtil.split(StringUtil.split(StringUtil.split(Job.getNodeOutput("前一节点名"),"]")[0],"[")[0],"\\"")[0]}
举例4
如果前一个SQL节点的输出结果为[["11"]]。若要获取该值"11",EL表达式可以写成:
#{StringUtil.getDigits(Job.getNodeOutput("nodeName"))}
举例5
提取字符串中的数字,拼接后返回。
String getDigits(String str)
举例:str为"1123~45",则返回"112345";str为"abc",则返回"";str为"12345",则返回"12345"。