小编典典

无效的转义序列

java

我想过滤掉所有单词,这些单词包含1个数字和3个大写字母,总长度为4。在这里查看我的示例:http

//gskinner.com/RegExr/?32taa

ArrayList result = new ArrayList();

for(int i = 0; i <= 10; i++){

String message = resp.data.get(i).message;

Matcher m = MY_PATTERN.matcher("\b(?=[^\d]*\d[^\d]*)[A-Z\d]{4}\b");

    while (m.find()) {
        String s = m.group(1);
        result.add(s);
    }

}

但是,当我将我的regexp模式传递给matcher方法时,出现错误:

Invalid escape sequence (valid ones are  \b  \t  \n  \f  \r  \"  \'  \\ )

我需要换\d一封信吗?


阅读 232

收藏
2020-11-26

共1个答案

小编典典

您的代码有两个问题:

使用正则表达式模式

\\b(?=[A-Z]*\\d[A-Z]*\\b)[A-Z\\d]{4}\\b
2020-11-26