我想知道如何以十六进制格式创建正则表达式模式。
格式应为:(0-9A-F)_16
我试过[0-9A-F]_[0-9]
了,但我遇到了错误。另外,我不相信下划线之前的第一部分适用于多个数字。
例子:
FEDCBA987654321_16
[0-9A-Fa-f]+_16
应该为此工作(+
在正则表达式标记之后意味着“匹配此标记的一个或多个重复”)。
如果要检查给定字符串是否与此模式完全匹配,请使用
boolean foundMatch = subjectString.matches("[0-9A-Fa-f]+_16");
如果您想找到与您的正则表达式匹配的较长字符串的部分,您应该在您的正则表达式周围添加单词边界:
String ResultString = null;
Pattern regex = Pattern.compile("\\b[0-9A-Fa-f]+_16\\b");
Matcher regexMatcher = regex.matcher(subjectString);
if (regexMatcher.find()) {
ResultString = regexMatcher.group();
}