在文本

时间:2018-03-05 15:07:09

标签: groovy substring indexof

我目前正在编写一个可以根据给定条件提取字符的groovy脚本,但是我在特定数量的char之后努力提取特定字符串。例如:

If (text = 'ABCDEF')
{
Return (start from C and print only CDE)
}

我已经使用过substring但是没有给我正确的输出:

If (text = 'ABCDEF')
{
    Return(text.substring(2));
}

3 个答案:

答案 0 :(得分:1)

试试这个:

if (text == 'ABCDEF') 
{
   return text.substring(2, 5)
}

=用于为变量赋值。

==用于检查两个变量之间的相等性。

答案 1 :(得分:0)

你的大写是完全不可能的

if (text == 'ABCDEF') {
    text.substring(2)
}

使用return时可能还存在问题,但这取决于您未在问题中显示的背景

答案 2 :(得分:0)

您的子字符串函数未完成。如果需要获取特定索引(在本例中为索引2到5),则需要添加要结束的索引。如果不这样做,您的字符串将打印从索引2开始的字符串,然后打印字符串中的其余字符。您需要输入以下内容:

if(text == 'ABCDEF') {
   return text.substring(2, 5);
}

另外,请记住结束索引(索引5)是独占的,因此不会打印索引5处的字符。