org.apache.commons.lang3.text.StrSubstitutor Example

Q

What is org.apache.commons.lang3.text.StrSubstitutor class? How to use org.apache.commons.lang3.text.StrSubstitutor class?

✍: FYIcenter.com

A

org.apache.commons.lang3.text.StrSubstitutor class is a Java class offered in commons-lang3.jar that substitutes variables within a string by variable values.

Here is a simple example of org.apache.commons.lang3.text.StrSubstitutor class:

// Copyright (c) 2016 FYIcenter.com
import java.util.HashMap;
import java.util.Properties;
import org.apache.commons.lang3.text.StrSubstitutor;

// Example of using the StrSubstitutor class
public class StrSubstitutorExample {
   public static void main(String[] args) throws Exception {
      
      // Create a StrSubstitutor with a lookup map
      HashMap map = new HashMap();
      map.put("animal", "quick brown fox");
      map.put("target", "lazy dog");
      StrSubstitutor sub = new StrSubstitutor(map);
      
      // Substitute an English template
      String temp = "The ${animal} jumped over the ${target}.";
      String str = sub.replace(temp);
      System.out.println(str);
      
      // Substitute a French template
      temp = "Le ${animal} par dessus le ${target}.";
      str = sub.replace(temp);
      System.out.println(str);
     
      // Create a list of properties as the lookup map
      Properties lookup = new Properties();
      lookup.setProperty("name", "John");
      lookup.setProperty("url", "jar.fyicenter.com");
      
      // Substitute a template with the list of properties
      temp = "Hi ${name}, welcome to ${url}!";
      str = StrSubstitutor.replace(temp, lookup);
      System.out.println(str);
   }
}

You can compile and run the above example in a command window as shown below:

C:\fyicenter>\local\jdk-1.8.0\bin\javac 
   -cp C:\local\commons-lang3-3.5\commons-lang3-3.5.jar
   StrSubstitutor.java

C:\fyicenter>\local\jdk-1.8.0\bin\java
   -cp .;C:\local\commons-lang3-3.5\commons-lang3-3.5.jar
   StrSubstitutor

The quick brown fox jumped over the lazy dog.
Le quick brown fox par dessus le lazy dog.
Hi John, welcome to jar.fyicenter.com!

 

⇒ org.apache.commons.lang3.time.StopWatch Example

⇐ org.apache.commons.lang3.text.StrBuilder Example

⇑ Using commons-lang3.jar in Java Programs

⇑⇑ FAQ for Apache commons-lang.jar

2016-11-24, 1616👍, 0💬