我试图找到一个 Java 子字符串,然后在不删除字符串其余部分的情况下将其删除。
我将 XML 作为输入并想删除一个已弃用的标签,例如:
public class whatever {
public static void main(String[] args) {
String uploadedXML = "<someStuff>Bats!</someStuff> <name></name>";
CharSequence deleteRaise = "<name>";
// If an Addenda exists we continue with the process
if (xml_in.contains(deleteRaise)){
// delete
} else {
// Carry on
}
}
在那里我想删除 <name>
和 </name>
标签,如果它们在离开时包含在字符串中 <someStuff>
和 </someStuff>
.
我已经将 XML 解析为字符串,所以没有问题。我需要知道如何找到特定的字符串并删除它们。
最佳答案
您可以使用 replaceAll(regex, str)
去做这个。如果您不熟悉正则表达式,?
只是意味着可以有0 or 1
出现 /
在字符串中,所以它覆盖了 <name>
和 </name>
String uploadedXML = "<someStuff>Bats!</someStuff> <name></name>";
String filter = "</?name>";
uploadedXML = uploadedXML.replaceAll(filter, "");
System.out.println(uploadedXML);
<someStuff>Bats!</someStuff>
关于java - 在 Java 中查找和删除子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23506875/