我有一個字符串,我想從中刪除一個節。使用開始和結束值刪除字符串
我想刪除<img width
開始並以/>
首先我要完全刪除這整個img標籤結束本節。
我有以下但它需要一個完整的字符串,而我只有開始和結束,隨着中間的變化。
String string = var.replace("string to replace but dont have entire", "");
我有一個字符串,我想從中刪除一個節。使用開始和結束值刪除字符串
我想刪除<img width
開始並以/>
首先我要完全刪除這整個img標籤結束本節。
我有以下但它需要一個完整的字符串,而我只有開始和結束,隨着中間的變化。
String string = var.replace("string to replace but dont have entire", "");
的String.replaceAll方式:
String text = "… \n … <img width … /> → \n…";
text = text.replaceAll("<img[\\d\\D]*?/>", ""));
完美,正是我所期待的。閱讀你在那裏做了什麼的任何鏈接?什麼是[\\ d \\ D] *?在做什麼?謝謝:) – sark9012 2014-09-19 10:37:27
在正則表達式中,點'。'表示除了換行符'\ n'之外的任何字符,除非使用java.util.regex.Pattern API的Pattern.DOTALL。但是使用replaceAll,您沒有標誌,表達式[\ d \ D]表示數字和非數字字符,包含換行符=>所有字符。它也適用於[\ w \ W]和其他/不是那個。所有關於這裏的正則表達式:http://regular-expressions.info – 2014-09-19 10:40:37
http://en.wikipedia.org/wiki/Regular_expression – 2014-09-19 10:40:52
這是一個容易理解的方法:
(當然使用正則表達式會更好)
int beginOFImageTag = var.indexOf("<img width");
int endOfImageTag = var.indexOf("/>", beginOFImageTag + 10); //"+10" because "<img width" has 10 chars
String string = var.substring(0, beginOFImageTag) + var.substring(endOfImageTag + 2, var.length());
在哪裏你的嘗試? – 2014-09-19 10:25:18
由於OP – 2014-09-19 10:28:13
缺乏努力,這個問題似乎是無關緊要的?我所看到的似乎並不相關。我已更新到問題顯示我有什麼和需要。 – sark9012 2014-09-19 10:29:19