Regex i java
Hej alleJeg ønsker at benytte et regex java for at identificere tekst efter følgende model:
text|whitespace|text
Jeg har fundet frem til dette regex for at identificere teksten:
Pattern pattern = Pattern.compile("\\w+\\s+\\w+");
Altså et eller flere bogstaver, efterfuldt af et eller flere blanktegn efterfulgt af et eller flere bogstaver. Dvs hvis jeg har teksten:
"En lille blå bil" vil jeg gerne have følgende tilbage:
"En lille","lille blå" og "blå bil".
Problemet er at jeg kun får
"En lille" og "Blå bil" - det er altså somom regex spiser det der allerede er blevet analyseret så der ikke kan findes "lille blå".
jeg bruger java 1.5 og koden nedenunder for at teste mit regex
Pattern pattern = Pattern.compile("\\w+\\s+\\w+");
Matcher matcher = pattern.matcher(s);
while (matcher.find())
{
System.out.println("I found the text: " + matcher.group() + "starting at: " + matcher.start() + " and ending at index: " + matcher.end());
}
Er det muligt at lave et regex, eller benytte en anden metode and find for at java's implementation af regex tilsvarer det jeg forventer?
