Satırın başlangıcını ve sonunu belirtmek için^ve $ tuşlarını kullanıyorum. Böyle
Pattern pattern = Pattern.compile("^Key2 = (.+)$");
ve girdi:
String text = "Key1 = Twas brillig, and the slithy toves"
+ "\nKey2 = Did gyre and gimble in the wabe."
+ "\nKey3 = All mimsy were the borogroves."
+ "\nKey4 = And the mome raths outgrabe.";
Ama pattern.matcher(text).find()
döner false
.
Bu çalışma yapılmamalıdır mı? Pattern class documentation, bu özet belirtir:
Boundary matchers ^ The beginning of a line $ The end of a line
fantastik :) i geçmiş – AbtPst
@AbtPst kendimi bununla mücadele - Kendim de. Javadoc'taki detaylar gömüldü; Özet kısa bir açıklama kullanabilir. Yıllar boyunca bu çok kez karşılaştım, çözdüm ve unuttum. Bir dahaki sefere bu stackoverflow sorusu olacak! –