我在处理一个正则表达式时遇到了困难,希望在这里寻求一些指导。我已经在这里和Google上搜索过了,但很难找到正确的术语。我可以想象非捕获组会对我有所帮助,但我不知道如何应用它们。
基本上,我想要查找Java单行注释,这些注释是“尖叫”的(没有小写字母):
现在我也发现了这样的评论:
但是现在我无法将两个表达式合并成一个正则表达式。这应该如何处理?谢谢,Peter。
基本上,我想要查找Java单行注释,这些注释是“尖叫”的(没有小写字母):
^[ \t]*//[^a-z]+?$
现在我也发现了这样的评论:
// PN-123456
// ITK 12345
//IT-12345
这些评论对我有效,所以我想要将它们从上述正则表达式中排除。 它总是遵循以下模式:
- 可选的空格
- "PN" 或 "IT" 或 "ITK"
- 连字符、空格或无内容
- 四到六位数字
- 可选的空格
这就是我处理此模式的方法:
[ ]?PN[ -]?[0-9]{1,6}
但是现在我无法将两个表达式合并成一个正则表达式。这应该如何处理?谢谢,Peter。
//
- 它可以放在预读之前(当然也可以是\s*//
)。谢谢! - Kobi