In Java, substring()
is a static method of the StringUtils
class that returns the string between the given start and end index. Negative start and end index positions can be used to specify offsets relative to the end of the string.
StringUtils
StringUtils
can be found in the Apache Commons Lang package, which we can add to the Maven project by adding the following dependency to the pom.xml
file.
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
Note: For other versions of the
commons-lang
package, refer to the Maven Repository.
We can import the StringUtils
class as follows:
import org.apache.commons.lang3.StringUtils;
public static String substring(final String str, int start, int end)
str
: This is the given string from which the substring has to be extracted.start
: This is the starting index.end
: This is the ending index.This method returns a substring.
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>test</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target> </properties> <dependencies> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.12.0</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>2.1</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>Main</mainClass> </transformer> </transformers> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>
The Maven dependency for StringUtils
is included in the pom.xml
file:
Main.java
StringUtils
class.text
.start
.end
.start
and end
is retrieved by invoking the substring()
method.end
.start
and end
is retrieved by invoking the substring()
method. As end
is a negative value, the end
offset is relative to the end of the string.