Я хотел бы, чтобы извлечь строки между следующими символами в данной строке с помощью регулярных выражений в Java:регулярное выражение экстракт строки между двумя символами
/*
1) Between \" and \" ===> 12222222222
2) Between :+ and @ ===> 12222222222
3) Between @ and > ===> 192.168.140.1
*/
String remoteUriStr = "\"+12222222222\" <sip:[email protected]>";
String regex1 = "\"(.+?)\"";
String regex2 = ":+(.+?)@";
String regex3 = "@(.+?)>";
Pattern p = Pattern.compile(regex1);
Matcher matcher = p.matcher(remoteUri);
if (matcher.matches()) {
title = matcher.group(1);
}
Я использую выше приведенный фрагмент кода, его не в состоянии извлечь строки, которые я хочу. Я что-то делаю неправильно? Между тем, я довольно новичок в регулярном выражении.
+1 Хотя вам нужно '' Pattern.compile' и String' (заглавную 'S'): http://ideone.com/zyNVn. Вероятно, CSharpian slip :) – mellamokb
Это привело к тому, что у вас был очень хороший код. И да, C# немного ближе ко мне, чем Java;) – Joey