Wenn ich schreibe: "integralfrom1to10ofx^2) + integralfrom1to10ofx^3)",Java RegexMuster overmatching (Muster entspricht einer Sequenz statt zwei)
Ich erwarte, dass meine regex:
// INTEGRAL BASIC
Pattern integralFinalPattern = Pattern.compile("integralfrom(.*)to(.*)of(.*)\\)");
Matcher integralFinalMatcher = integralFinalPattern.matcher(regexDedicatedString);
if(integralFinalMatcher.find()){
String integral_user_input = integralFinalMatcher.group(0);
String integral_lower_index = integralFinalMatcher.group(1);
String integral_upper_index = integralFinalMatcher.group(2);
String integral_formula = integralFinalMatcher.group(3);
String ultimateLatexIntegral = "(\\int_{"+ integral_lower_index
+"}^{"+ integral_upper_index +"} " + integral_formula + ")";
mathFormula = mathFormula.replace(integral_user_input, ultimateLatexIntegral);
}
übereinstimmen diese zwei Saiten getrennt, aber für jetzt würde es es als eins interpretieren. in Folge davon Und ich würde die folgende Latex SVG erhalten:
I-Ausgang mit zwei separaten Integralen haben möchte, hier wie haben: Wie ich dies mit regex erreichen kann?
Offensichtlich suche ich nach einer Idee, die es für mehr als zwei Stücke arbeiten lassen würde.
Bitte Code-Boxen verwenden und keine Bilder Code und Eingabe/Ausgabe darzustellen. –
[Entmutigen Screenshots von Code und/oder Fehlern] (http://meta.stackoverflow.com/q/303812/995714) –
Verwenden Sie nicht gierige Quantifizierer: '(. *?)' Anstelle von '(. *)' . –