【发布时间】:2020-10-19 12:05:40
【问题描述】:
我正在尝试使用以下条件构建 java 正则表达式:
-
标识符不能以特殊字符开头或结尾
-
不允许有多个特殊字符的序列
-
允许的特殊字符有:冒号、连字符(减号)、句号(句号)和下划线
我已经做了一些分析并构建了正则表达式:
String regularexp="^[A-Za-z0-9](?:,/-/_.*?[^A-Za-z0-9]{2}).*?[A-Za-z0-9]$" ;但不知何故它不起作用。
final Pattern pattern = Pattern.compile(regex);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
你能检查一下我在哪里做错了吗。
【问题讨论】: