import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?:\\s+)?(\\w+)\\?.\\s+\\w+(?:\\[\\])?";
final String string = "attributiAggiuntiviList?: List;\n"
+ " tipologiaAnagrafica?: number;\n"
+ " email?: string;\n"
+ " pec?: string;\n"
+ " sitoWeb?: string;\n"
+ " modalitaAcquisizione?: number;\n"
+ " dataAcquisizione?: Date;\n"
+ " referral?: string;\n"
+ " telefonos?: Telefon[];\n"
+ " preferenzaComunicazioneList?: List;\n"
+ " id?: string;\n"
+ " indirizzos?: Indirizzo[];\n"
+ " privacy?: Privacy[];\n"
+ " personaFisica?: PersonaFisica;\n"
+ " personaGiuridica?: string;\n"
+ " ente?: string;\n"
+ " uo?: string;\n"
+ " datiCliente?: DatiCliente;\n"
+ " datiFornitore?: DatiDipendente;\n"
+ " datiVendor?: DatiDipendente;\n"
+ " datiVettore?: DatiDipendente;\n"
+ " datiReferente?: DatiDipendente;\n"
+ " datiDipendente?: DatiDipendente;";
final String subst = "this.$1 = item && \"$1\" in item ? item.$1 || null : null\\n";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
// The substituted value will be contained in the result variable
final String result = matcher.replaceAll(subst);
System.out.println("Substitution result: " + result);
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html