2012-11-15 40 views

回答

3

這是某事像那:

String regexp = "--+"; 

這是如何使用它:

 Pattern p = Pattern.compile(regexpr); 

    System.out.println(p.matcher("fsdfsa").matches()); //false 
    System.out.println(p.matcher("-").matches()); //false 
    System.out.println(p.matcher("--").matches()); //true 
    System.out.println(p.matcher("-----").matches()); //true 
+0

如果您只使用'matches'方法,則不需要手動編譯模式,您可以使用[String]中定義的'matches'(http://docs.oracle.com/javase/ 7/docs/api/java/lang/String.html#matches(java.lang.String)) – jlordo

+0

在示例的上下文中,您是對的。但是,如果你打算多一次使用正則表達式,並且這不是微不足道的,就像在這種情況下一樣預編譯它並使用Pattern – bmichalik

0

正則表達式\--+將完成這項工作。

1

這是明確的連字符,而不是一個破折號,而不是一個減號。請參閱Unicode Hyphen characters

String pattern = "[\u2010]{2,}"; 

您可以將所有不同的連字符添加到方括號中。下面的量詞說2次或更多次。

相關問題