2013-04-07 83 views
0

如何使用正则表达式从下面的字符串中提取“id”。正则表达式:Java:匹配2个空格之间的词

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

我需要能够提取“ID”标题以及值“标题”。

结果:ID =“”标题“”

我试图采用分体式功能用正则表达式来提取字符串的标识符。

回答

0

试试这个:

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

干杯!

+0

要求澄清,如果你想要它。 – 2013-04-07 12:11:37

+0

不必要的逃逸。这足够''。*(id \\ s * = \“[^ \”] * \“)。*”' – nhahtdh 2013-04-07 12:16:59

+0

这是经得起“意想不到的”空白处理的。 – 2013-04-07 12:17:37

0

使用模式和匹配器类来查找您要查找的内容。试着找到这些正则表达式\\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()); 
相关问题