java - 如何使用java从长字符串中删除特定的字符串值?
问题描述
String actualResource = driver.getPageSource();
实际资源输出是
<html><head><meta http-equiv="Content-Type" content="text/html" charset="UTF-8"></meta><link rel="stylesheet" type="text/css" href="Html_4d1b82e4-c90b-48ce-8640-3ab33abc7850.css"></link><script language="javascript" src="script.js"></script><script language="javascript"></script><link rel="stylesheet" type="text/css" href="script.css"></link></head><body><p class="paragraph_class4 Title"><span class="paragraph_class4 Title text_class2"><span>Testing</span></span></p><p class="paragraph_class5"><span class="paragraph_class5 text_class2"><span>Generated Tue Sep 21 2021 03:01:46 GMT-0400 (EDT)</span></span></p><p class="paragraph_class6"><h3 class="paragraph_class6 text_class7 3"><span>Work Items</span></h3></p><p class="paragraph_class6"><span class="paragraph_class6 text_class120"><span>Fixed WIs/Total WIs: </span></span><span class="paragraph_class6 text_class121"><span>29</span></span></body></html>
我需要从这个长字符串中删除“Generated Tue Sep 21 2021 03:01:46 GMT-0400 (EDT)”的值。生成的时间值与当前时间戳是完全动态的。
请帮助解决这个问题。
解决方案
好吧,我不是正则表达式专家,一个简单的正则表达式过滤掉
<span>Generated Tue Sep 21 2021 03:01:46 GMT-0400 (EDT)</span>
是:
public static void main(String[] args) {
String pattern = "(<span>Generated).*\\(EDT\\)(</span>)";
String longText = "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html\" charset=\"UTF-8\"></meta><link rel=\"stylesheet\" type=\"text/css\" href=\"Html_4d1b82e4-c90b-48ce-8640-3ab33abc7850.css\"></link><script language=\"javascript\" src=\"script.js\"></script><script language=\"javascript\"></script><link rel=\"stylesheet\" type=\"text/css\" href=\"script.css\"></link></head><body><p class=\"paragraph_class4 Title\"><span class=\"paragraph_class4 Title text_class2\"><span>Testing</span></span></p><p class=\"paragraph_class5\"><span class=\"paragraph_class5 text_class2\"><span>Generated Tue Sep 21 2021 03:01:46 GMT-0400 (EDT)</span></span></p><p class=\"paragraph_class6\"><h3 class=\"paragraph_class6 text_class7 3\"><span>Work Items</span></h3></p><p class=\"paragraph_class6\"><span class=\"paragraph_class6 text_class120\"><span>Fixed WIs/Total WIs: </span></span><span class=\"paragraph_class6 text_class121\"><span>29</span></span></body></html>";
final String s = longText.replaceAll(pattern, "");
System.out.println(s);
}
以上也将删除(空)<span></span>
元素。但是,如果您希望它们完好无损并删除其中的文本,则可以将正则表达式更改为:
String pattern = "(Generated).*\\(EDT\\)";
推荐阅读
- python - 从 python 脚本返回一个变量以在 ipython 控制台中使用
- react-native-android - 使用 react-native-fused-location 什么都不返回
- java - 如何在 Eclipse 中查看 java SDK (java.lang, java.util, ...) 类的源代码?
- php - Docker LEMP stack with WordPress,什么需要连接到memcached?
- asp.net - 使用 vb.net 从 asp.net 中的 SQL Server 数据库中读取下拉列表中所选项目的图像
- java - 选择和取消选择reclerview项目未正确更改图像
- firebase - iOS 在 Firebase 中有可信提供者的概念吗?
- php - fetchAll() 正在打印数据两次
- css - 如何使用列表样式类型的十进制但没有点
- google-maps - kmz更改后刷新谷歌地图