你好我想测试字符串是否包含字符_然后我们做stringHandling.CHANGE(StringHandling.LEFT(row1.B,9),"_","S")
没有别的。我不知道该怎么做可以帮助我的talend
row1.B.contains("_")?StringHandling.CHANGE(StringHandling.LEFT(row1.B,9),"_","S")
答案 0 :(得分:1)
在这种情况下不要使用三元运算符(?:),因为它需要左侧的赋值运算符和右侧的两个选项(不适合)。
对于单字符检查,我更喜欢indexOf
,如下所示:
if(row1.B != null && row1.B.indexOf('_')>=0){
StringHandling.CHANGE(StringHandling.LEFT(row1.B,9),"_","S");
}