gpt4 book ai didi

java - 重新格式化 Java 源代码,使用行尾大括号代替下一行

转载 作者:行者123 更新时间:2023-12-01 13:10:56 25 4
gpt4 key购买 nike

我一直在试图找出如何解决一个问题(进一步链接),但是,我遇到了困难。

基本上,我必须重新格式化使用下一行大括号到行尾大括号的源代码。由于某种原因,我类的教授决定将此问题分配到我们的字符串章节中,而不是文本 I/O 章节中(大约 5 章之后)。

String sourceString = new String(Files.readAllBytes(Paths.get("Test.txt")));
String formatted = sourceString.replaceAll("\\s\\{", "\\{");
System.out.println(formatted);

这就是我到目前为止所拥有的。当我运行时,输出与源文件相同。我关注了这个problem并使用我发现的一个习惯用法将所有文件转换为字符串,replaceAll 方法停止...替换。

虽然我仍然这样设置

StringBuilder source = new StringBuilder();
while(s.hasNext()){
source.append(s.nextLine());
}
String sourceString = source.toString();
String formatted = sourceString.replaceAll("\\)\\s*\\{", ") {");
System.out.println(formatted);

输出全部在一行上。我觉得 ReplaceAll 方法根本没有发生。我觉得我忘记了一些明显的事情。

最佳答案

replaceAll() 的第二个参数是一个字符串,而不是正则表达式,因此不需要转义那里的 {

还可以添加一个 + 来表示一个或多个空格。

所以:

sourceString.replaceAll("\\s+\\{", "{")

关于java - 重新格式化 Java 源代码,使用行尾大括号代替下一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22874800/

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