繁体   English   中英

用自己或'else'这个词来表示花括号

[英]regex to curly braces on their own or with the 'else' word

我正在尝试为代码计数工具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任何空格。

以下正则表达式将匹配由以下更多实例组成的行: whitespaces{}else单词组件,但没有别的:

^(?:[\s{}]|else)+$

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM