如何在java中编写一个正则表达式来检查一个字符串是否包含两个字符空间和三个整数?

时间:2014-12-29 11:20:50

标签: java regex string

我有一个字符串String myString = "abc,QWAB 123,cdef";

如何编写正则表达式以检查我的字符串是否具有AB(空格)123。我不想考虑QW。数字123也是一位数或两位数或三位数,总是不会是三位数。

请帮忙。

4 个答案:

答案 0 :(得分:3)

Pattern pat = Pattern.compile( "AB \\d{1,3}" );

答案 1 :(得分:0)

^[^,]+,AB \d{1,3},.*$

试试这个。这应该这样做。参见演示。

https://regex101.com/r/gX5qF3/8

答案 2 :(得分:0)

尝试类似:

String myString = "abc,QWAB 123,cdef";
if (myString.matches(".*AB [0-9]{1,3}.*")) {
    System.out.println("Yes it mateched");
} else {
    System.out.println("Hard luck");
}

答案 3 :(得分:0)

这个:

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * Hello world!
 *
 */
public class App {

static String myString = "abc,QWAB 123,cdef";
static String abcPattern = "(AB[\\s]{1}\\d{1,3})";

public static void main(String[] args) {


    Pattern pattern = Pattern.compile(App.abcPattern, Pattern.CASE_INSENSITIVE);
    Matcher matcher = pattern.matcher(myString);
    if (matcher.find()) {
        System.out.println(matcher.group());
    } else {
        System.out.println(" No mach found   ");
    }
}

}