2013-04-07 138 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());