我试图将前缀和后缀添加到java中字符串中单词的特定位置。谁能帮助我,告诉我哪里出问题了?下面是我的代码。
public static void main(String[] args) {
String str = "Hello world. welcome world java.";
String arr[] = str.split("[. ]");
if(str.contains("world")) {
System.out.println("PREFIX_"+str+"_SUFFIX");
}
}
预期输出:
Hello PREFIX_world_SUFFIX. welcome PREFIX_world_SUFFIX java
输出得到:
PREFIX_Hello world. welcome world java_SUFFIX
您的代码是错误的,因为str
在调用split()函数时未更改变量。另外,根据我的收集,您还想为包含“ world”的单词添加前缀和后缀。就像您的字符串像这样:一样Hello worldJava! welcome to java world
,您想要显示这样的东西:Hello PREFIX_worldJava_SUFFIX! welcome to java PREFIX_world_SUFFIX
。(请注意,以前的答案将无法进行这种替换)。
String str = "Hello world. welcome world java.";
String[] wordArr = str.split("[. ]");
Set<String> words = new HashSet<>(Arrays.asList(wordArr));
for (String w: words) {
if(w.toLowerCase().contains("world")){
str = str.replace(w, "PREFIX_"+ w +"_SUFFIX");
}
}
System.out.println(str);
注意这里我使用java Set来解析输入字符串中的唯一单词,然后用添加的前缀/后缀替换原始字符串中的单词。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句