2013-04-07 2 views
0

Как извлечь «id» из следующей строки с помощью regex.regex: Java: совпадение между двумя пробелами

string = 11,"col=""book"" id=""title"" length=""10"" 

Мне нужно убрать заголовок «id» вместе со значением «title».

результат: ID = «» Название «»

Я пытаюсь использовать функцию разделенного с регулярным выражением для извлечения идентификатора из строки.

ответ

0

Попробуйте это:

String result = "col=\"book\" id=\"title\" length=\"10\""; 
String pattern = ".*(id\\s*=\\s*\"[^\"]*\").*"; 
System.out.println(result.replaceAll(pattern,"$1")); 

Ура!

+0

запрос уточнение если хотите. –

+0

Ненужные побеги. Это достаточно ''. * (Id \\ s * = \ "[^ \"] * \ "). *" ' – nhahtdh

+0

Это, кстати, означает« неожиданные »пробелы. –

0

Используйте классы Pattern и Matcher, чтобы найти то, что вы ищете. Попробуйте найти это регулярное выражение \\bid=[^ ]*.

String data = "string = 11,\"col=\"\"book\"\" id=\"\"title\"\" length=\"\"10\"\""; 
Matcher m = Pattern.compile("\\bid=[^ ]*").matcher(data); 
if (m.find()) 
    System.out.println(m.group()); 
Смежные вопросы