这在某种程度上是在java中的问题Ruby - replace the first occurrence of a substring with another string的重复。
问题是:
我有一个字符串:"ha bla ha ha"
现在我想用"ha"
替换第一个(仅限第一个)"gurp"
:
"gurp bla ha ha"
string.replace("ha", "gurp")
不起作用,因为它取代了所有"ha"
。
答案 0 :(得分:7)
试试the replaceFirst
method。它使用正则表达式,但文字序列"ha"
仍然有效。
string.replaceFirst("ha", "gurp");
答案 1 :(得分:2)
尝试使用replaceFirst()
(从Java 1.4开始提供),它可以满足您的需求:
string = string.replaceFirst("ha", "gurp");
答案 2 :(得分:2)
您应该使用已经过测试且记录良好的库来支持编写自己的代码!
StringUtils.replaceOnce("aba", "a", "") = "ba"
(复制自如何在Java中仅使用正则表达式替换字符串一次?)