爲什麼在Java中的正則表達式庫中的EOL在下一命令EOL在Java中的正則表達式
Matcher matcher = Pattern.compile("[\\\\r\\\\n$]+").matcher(" where ");
if (matcher.find())
{
// found reaction
}
爲什麼在Java中的正則表達式庫中的EOL在下一命令EOL在Java中的正則表達式
Matcher matcher = Pattern.compile("[\\\\r\\\\n$]+").matcher(" where ");
if (matcher.find())
{
// found reaction
}
兩個問題:
\r
和\n
,而不是\\r
和\\n
。在Java中,你需要將它們轉義一次,所以模式是\\r
和\\n
。" where "
)中搜索的字符串不包含任何回車+換行(只是\ r)。這將找到一個回車+換行:
Matcher matcher = Pattern.compile("[\\r\\n$]+").matcher(" where \n");
if (matcher.find()){
System.out.println("found");
}
問題是什麼? – Keppil 2013-03-25 19:03:25