天天看點

Javastring替換html字元,無法用java替換html字元串中的某個文本

我有一個方法,假設在将其發送到客戶電子郵件之前替換部分 html 字元串。我曾嘗試使用java replaceAll() 方法但沒有成功。這是我到目前為止嘗試過的:data.replaceAll("dd%title%dd", "This is the Title");

data.replaceAll("dd%message%dd", "This is the message body");

但是當我嘗試這個時它不起作用,我一直在得到字元串而沒有被替換。這是我在雅虎郵件收件箱中收到的郵件圖檔:

Javastring替換html字元,無法用java替換html字元串中的某個文本

我試過使用正規表達式來替換,但它沒有按我預期的那樣工作。

這是我現在所擁有的

private String msgTranslate(String subject, String messaging){

// HERE WE START CONSTRUCTING THE MESSAGE TRANSLATE

String content="";

String data="";

DjadeUtil util=new DjadeUtil();

// NOW LETS START PROCESSING

if(messaging!=null && subject!=null){

// Now lets read

try {

data=util.readByScanner(TEMPLATESOURCE);

// Now lets check

if(data.length()>0){

// Here we start matching to replace

StringBuffer sb = new StringBuffer(data.length());

Pattern patA = Pattern.compile("dd%title%dd");

Pattern patB = Pattern.compile("dd%message%dd");

Matcher mA = patA.matcher(data);

Matcher mB = patB.matcher(data);

while (mA.find()) {

mA.appendReplacement(sb, subject);

}// End of while loop

while (mB.find()) {

mB.appendReplacement(sb, messaging);

}// End of while loop

//HERE WE STORE NEW CHANGE

mA.appendTail(sb);

mB.appendTail(sb);

content=sb.toString();

}

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

// Here we return string

return content;

}

我想将“dd%title%dd”替換為“這是标題”,将“dd%message%dd”替換為“這是消息正文”。我不知道哪裡出錯了。任何幫助将不勝感激