我想用整數替換所有使用標準輸入的「變量」。用整數替換所有變量
輸入字符串:
「PQ + PQ + PQR + 4」
說,我輸入1爲pq
和3 pqr
。 我想什麼是
「1 + 1 + 3 + 4」
我怎麼能得到這個? 目前,我的代碼也取代pqr
與1r
,這是不合法的。
// replaces all variables to integer or double
String evalVariables(String line) {
Pattern p = Pattern.compile("(?i)(?:^|\\s+)([a-z]+)");
Matcher m = p.matcher(line);
while (m.find()) {
String targetStr = m.group();
System.out.println("targetStr: " + targetStr);
System.out.println("Enter a integer or a double value for the variable ");
System.out.print("[" + targetStr + "]: ");
Scanner sc = new Scanner(System.in);
String newStr = sc.next();
line = line.replaceAll(targetStr, newStr);
System.out.println("After replacement: "+ line);
m = p.matcher(line);
}
return line;
}