[英]How to use \n in regular expressions?
初始字符串為
System.out.println(myString)
看起來像這樣
Name: Sacha
Last name: Sidor
.............
Name: Masha
........
我試圖捕捉第二個名字,即瑪莎
Pattern pattern = Pattern.compile("(?:Name:.*?){2}\\n");
Matcher matcher = pattern.matcher(myString);
String secondName = "";
while (matcher.find()) {
secondName = matcher.group();
}
System.out.println(secondName); // prints nothing ???
使用Pattern.DOTALL
標志進行.
匹配所有字符,包括換行符。 沒有DOTALL
標志, .
與換行符不匹配。
Pattern pattern = Pattern.compile("(?:Name:.*?)(?:Name: )([^\\n]+)", Pattern.DOTALL);
Matcher matcher = pattern.matcher(myString);
String secondName = "";
if (matcher.find())
secondName = matcher.group(1);
System.out.println(secondName);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.