假设我有一个这样的字符串:
String test = "hfikoebndolahsdHEL123LOkjahhsdqhuihs";
然后我想删除除“HEL123LO”之外的所有内容,但该数字可能类似于 653,无论如何它都不会删除它。那可能吗?
我希望你能理解我!
提前致谢。
(抱歉英语不好)。
使用String.replaceAll()
正确的正则表达式的方法。
test = test.replaceAll(".*(HEL\\d{3}LO).*", "$1");
此正则表达式匹配整个输入并将其替换为匹配的组(组号 1)。
如果您String
将属于您提到的那种类型,"hfikoebndolahsdHEL123LOkjahhsdqhuihs"
并且只是数字之间的变化,并且您想要保留HEL123LO
并且其余字母与您的示例中的那种类型相同,那么您可以做一个简单的子字符串. 我知道这可能不是最好的解决方案,而只是提出一个替代方案。
test = test.substring(test.indexOf("H"),(test.lastIndexOf("O")+1));