我在文檔中找不到這個。我需要啓用大小寫不敏感,但只在特殊情況下。Pattern.compile沒有標誌?
如何以等同於Pattern.compile(String regex)
的方式調用方法Pattern.compile(String regex, int flags)
?我可以使用Pattern.compile("my regex", 0)
嗎?
我在文檔中找不到這個。我需要啓用大小寫不敏感,但只在特殊情況下。Pattern.compile沒有標誌?
如何以等同於Pattern.compile(String regex)
的方式調用方法Pattern.compile(String regex, int flags)
?我可以使用Pattern.compile("my regex", 0)
嗎?
是 - Pattern.compile(foo)
最後只是返回Pattern.compile(foo, 0)
。
這將是很好,如果文檔居然說,但是這就是我剛纔看了一下確實實施...
的code for Pattern.compile(String regex)
是(線1021及以下):
public static Pattern compile(String regex) {
return new Pattern(regex, 0);
}
和代碼Pattern.compile(String regex, int flags)
是:
public static Pattern compile(String regex, int flags) {
return new Pattern(regex, flags);
}
所以是的。
我可以只使用
Pattern.compile("my regex", 0)
嗎?
是的。所述javadoc說
標誌 - 匹配標誌,比特掩碼可以包括CASE_INSENSITIVE,MULTILINE,DOTALL,UNICODE_CASE,CANON_EQ,UNIX_LINES,直譯,UNICODE_CHARACTER_CLASS和評論
0是不含有位掩碼。
我需要啓用不區分大小寫,但只有在特殊情況下。
case-sensitivity有幾種不同的Pattern
。
要更好地控制區分大小寫,您可能需要執行自己的大小寫摺疊或整理。
請不要發佈嚴重阻礙的代碼。我們有些人可能希望有一天參加潔淨室的工作。 – 2012-04-16 17:47:11
@MikeSamuel不知道我明白你的意思:「嚴重密碼」。 – assylias 2012-04-16 17:54:22
該代碼是在[許可證](http://www.oracle.com/technetwork/java/scsl-1-1-149938.txt)下發布的,該許可證的限制比大多數操作系統許可證明顯更多。 – 2012-04-16 18:31:16