2016-02-14 97 views
0

我試圖通過正則表達式在記事本++中的文檔中查找文本,但無法找到它。使用正則表達式搜索數字時遇到問題

我的文件看起來像這樣(同樣的想法,但更長的時間):

<ObjectsGroup name="1_Color"> 
<InfoAtt AttInfo="1" AttName="INDEX"/> 
<Categories> 
<Category Probability="0.664914" Name="pen"/> 
<Category Probability="0.0757796" Name="switch"/> 
<Category Probability="0.0447911" Name="keyboard"/> 
</Categories> 
</ObjectsGroup> 
<ObjectsGroup name="1_Color"> 
<InfoAtt AttInfo="1" AttName="INDEX"/> 
<Categories> 
<Category Probability="0.530971" Name="computer bag"/> 
<Category Probability="0.144546" Name="computer monitor"/> 
<Category Probability="0.097265" Name="mug"/> 
</Categories> 
</ObjectsGroup> 
<ObjectsGroup name="1_Color"> 
<InfoAtt AttInfo="1" AttName="INDEX"/> 
<Categories> 
<Category Probability="0.412404" Name="table"/> 
<Category Probability="0.343684" Name="pillows"/> 
<Category Probability="0.175472" Name="chair"/> 
</Categories> 
</ObjectsGroup> 

我想找到該表是在類別列表中第一個的所有地方。

我寫了表達在查找窗口:

<Categories> 

<Category Probability"(\d*[.]\d*)" Name="table"/> 

但它並沒有找到它。

有人可以幫我嗎?

+1

'' –

+0

如果您不知道類別中可能包含什麼,使用非貪婪的正則表達式來獲取兩個結束字符串之間的所有內容:''。 [Regex101](https://regex101.com/r/lR6sS1/1) – sideroxylon

+2

@AvinashRaj,謝謝!這是正確的答案! – STF

回答

1

您需要更改\d[0-9]

這是在正則表達式中說數字的方式。

+1

'\ d'是「數字」的通常字符類,儘管它也可以匹配非拉丁數字。 –

+0

是的,但這裏說得不對。 – 2016-02-23 07:47:34

0

的方式做到這一點:

<Category Probability="([0-9]*[.][0-9]*)" Name="table"/> 
+0

'' – sideroxylon

+1

我工作時沒有\ \。 – STF

+1

不需要在Notepad ++ regex模式中轉義''/'',因爲正斜槓在正則表達式中沒有特殊含義。 –