Wie lässt sich eine Variable in einen regulären Ausdruck einfügen?

Eine String-Variable kann und muss wie ein normaler String in einen regulären Ausdruck eingebettet werden.

Im Beispiel sind zwei String-Variablen deklariert: jb enthält den zu prüfenden Text, var definiert ein Pattern, auf das jb geprüft werden soll. Wird das Pattern gefunden, so soll es durch den neuen String Kaffee ersetzt werden.
In der Methode matches() der Klasse String wird auf das Vorkommen von var geprüft: jb besteht, vereinfacht ausgedrückt, aus einer Reihe beliebiger Zeichen, dann dem Pattern (Snippets) und dann wieder einer Reihe beliebiger Zeichen.

public class VariableInRegex {

    public static void main(String[] args) {
        String jb = "Javabeginners, Quelltexte und Snippets f\u00fcr Java-Anf\u00e4nger.";
        String var = "Snippets";
        if(jb.matches(".*" + var + ".*")) {
            jb = jb.replaceAll(var, "Kaffee");
            System.out.println(jb);
        }
    }
}

Genau darauf filtert der reguläre Ausdruck. Er wird als Argument der Methode matches() übergeben. Die Variable var wird links und rechts mit zwei Strings durch den Plus-Operator verbunden. Beide Strings bestehen aus einem Punkt und einem Stern. Der Punkt steht für ein beliebiges Zeichen, der Stern für eine kein- oder mehrmalige Wiederholung des vorangegangenen Ausdrucks. Ersetzt man den Variablen-Bezeichner durch den Variablen-Inhalt, so ergibt dies: .*Snippets.*.