第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我需要澄清“缺少要轉(zhuǎn)義的字符”異常

我需要澄清“缺少要轉(zhuǎn)義的字符”異常

人到中年有點(diǎn)甜 2021-06-17 18:19:25
我有以下代碼:public class Test {public static void main(String[] args) {    String path = "${file.path}/fld/";    String realValue = "C:\\path\\smtg\\";    String variable = "${file.path}";    path = path.replaceAll("\\$\\{" + variable.substring(2, variable.length() - 1) + "\\}", realValue);    System.out.println(path);    }}這給了我以下例外:Exception in thread "main" java.lang.IllegalArgumentException: character to be escaped is missingat java.util.regex.Matcher.appendReplacement(Matcher.java:809)at java.util.regex.Matcher.replaceAll(Matcher.java:955)at java.lang.String.replaceAll(String.java:2223)at testCode.Test.main(Test.java:9)我已經(jīng)找到了一些關(guān)于這個問題的問題,但我仍然不明白這個錯誤。有人可以解釋一下這是怎么回事嗎?我知道這replace會很好用,但不幸的是我的同事不想修改這段代碼。所以我需要知道確切的問題來提供解決方案,因為在其他安裝中它有效。
查看完整描述

3 回答

?
藍(lán)山帝景

TA貢獻(xiàn)1843條經(jīng)驗 獲得超7個贊

ReplaceAll 將其輸入視為正則表達(dá)式。正則表達(dá)式中有一些有效的轉(zhuǎn)義表達(dá)式,例如\w單詞字符或\s任何空格。如果file.path是包含\它的 Windows 路徑,則很可能具有無效的轉(zhuǎn)義序列。在任何情況下,它都不會具有您想要的含義。

其他有效的情況是在類似 Unix 的環(huán)境中嗎?(unix, linux, os-x 等) 如果是這樣它可以工作,因為這些環(huán)境/用于路徑分隔符。

在打電話之前replaceAll你可以試試

variable = variable.replace("\\", "\\\\"); // to escape any \ in path.


查看完整回答
反對 回復(fù) 2021-06-30
?
MMTTMM

TA貢獻(xiàn)1869條經(jīng)驗 獲得超4個贊

replaceAll(regexString, replacementString)

規(guī)則 #1:

   第一個輸入接受正則表達(dá)式,在您的情況下,可讀性較低。


規(guī)則#2:

   第二個輸入按原樣接受用于替換的字符串文字,但根據(jù)replaceAll文檔,$或\替換字符串中的字符給出的結(jié)果與預(yù)期不同,因此這會導(dǎo)致java.lang.IllegalArgumentException: character to be escaped is missing.


解決方案片段:


public class Main {


   public static void main(String[] args) {

      String path = "${file.path}/fld/";

      String realValue = Matcher.quoteReplacement("C:\\path\\smtg");

      String variable = "\\$\\{file\\.path\\}";

      path = path.replaceAll(variable, realValue);

      System.out.println(path);

  }

}


查看完整回答
反對 回復(fù) 2021-06-30
  • 3 回答
  • 0 關(guān)注
  • 328 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號