gpt4 book ai didi

java 。替换所有以 : with space 结尾的单词

转载 作者:行者123 更新时间:2023-11-29 05:05:51 26 4
gpt4 key购买 nike

我有一个字符串

String str = "[myadat: 56, myLabel2: r5 , myll: rtet , erewrw: 56]";

我希望用空格替换所有以“:”结尾的单词。我的以下程序提供了错误的数据。

import java.util.*;
import java.lang.*;
import java.io.*;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
Pattern pattern = Pattern.compile(".*:");

String str = "[myadat: 56, myLabel2: r5, myll: rtet , erewrw: 56]";

Matcher m = pattern.matcher(str);

String str2 = m.replaceAll(" ");


System.out.println(str2);

}
}

我得到的结果是 56]

我想得到 [56,r5,rtet,56]

我如何确保它不会替换所有内容并且一次替换 1 个子字符串?

最佳答案

一次处理一个子字符串。您告诉它匹配“任意数量的字符,然后是 :”;它匹配 [myadat: 56, myLabel2: r5, myll: rtet , erewrw:(这是一堆字符然后是 :)。

如果您希望它只匹配不是空格的字符,请使用 [^ ]*:

关于 java 。替换所有以 : with space 结尾的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30363038/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com