gpt4 book ai didi

java - 正则表达式将其单独或与 'else' 单词一起转换为大括号

转载 作者:行者123 更新时间:2023-12-02 07:06:43 25 4
gpt4 key购买 nike

我正在尝试为代码计数工具cloc编写一些自定义定义,但不幸的是正则表达式不是我的强项。

我正在努力编写一个正则表达式来匹配 {} 之前和/或之后仅包含空格的行

我还需要匹配包含空格和 } 后跟关键字 else 的行

即在以下示例中:

1  if ( some condition ) {
2 do something
3 } else if ( some other condition ) {
4 do this
5 } else {
6 do this
7 }
8
9 if ( some other condition )
10 {
11 do this
12 }

我需要一个匹配第 5、7、10 和 12 行的正则表达式。

我从一个非常简单的 \s*{ 开始,但这也与包含单词的行匹配。

最佳答案

此正则表达式遵循您概述的规范:

String regex = "\\s*[{}]\\s*|\\s*\\}\\s*else.*";

它匹配包含以下任一内容的行:

  • 0 或多个空格,后跟 {},后跟 0 或多个空格

  • 0 或更多空格,后跟 },然后是 0 或更多空格,然后是 else,然后是任何东西。

关于java - 正则表达式将其单独或与 'else' 单词一起转换为大括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16012669/

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