2017-03-17 70 views
3

有人對Regex 0.12有一些經驗嗎?正則表達式0.12是如何工作的? IBM Watson transf。正則表達式 d + 。 d + 。 d + [PZ] d + - into - >正則表達式0.12

此時,我們使用的是Watson Explorer企業版。 因此,我們已經構建一個XSL腳本可以檢索perticual元數據回:

我們基本上需要的是3.2.14P587914.1.1Z5526

這樣的模式:數位點數字點位字母,數字P_or_Z

例如,如果我的文字:

有與項目3.2.14P5879,regardin問題克至記錄14.1.1Z5526 -ABC.docx它說,我們已經使用的文檔「14.1.1P5526 - xyz.pdf」

然後,它會是驚人的,如果我們能有下一個結果:

- <content name="test">3.2.14P5879</content> 
- <content name="test">14.1.1Z5526</content> 
- <content name="test">14.1.1P5526</content> 

但現在, 當我們試圖用下一個REG-表達

\d+\.\d+\.\d+[PZ]\d+ 

我們注意到,它沒有工作,爲此,其原因是:我們認爲,華生根據這個鏈接仍然使用正則表達式0.12

https://www.ibm.com/support/knowledgecenter/SS8NLW_11.0.2/com.ibm.swg.im.infosphere.dataexpl.engine.man.doc/r_viv_match.html

和(見正則表達式規範詳細信息):

http://www.delorie.com/gnu/docs/regex/regex_toc.html

因此,問題是:

如何將\ d +。\ d +。\ d + [PZ] \ d +寫入正則表達式0.12兼容版本?

如何以及在哪裏可以測試這些東西? (我不想接力計算器,爲每一個新的查詢)

回答

2

您可以使用

[:digit:]+\.[:digit:]+\.[:digit:]+[PF][:digit:]+ 

,如果我沒有記錯。

+0

它是好,如果我下週三測試它?然後我再次訪問WEX – Dieter

+0

@Dieter隨時測試它! –

+0

嘿,如果你編輯你的代碼,根據我的解決方案,我會接受你的正確 - 因爲你犯了一個小錯誤 – Dieter

0
[0-9]+\.[0-9]+\.[0-9]+[PZ][0-9]+ 

以上REG表達,如果我們分解這個表達式,然後我們將有7節會發現作爲123.12.12P1234

類似的模式。

因此:

找到我在包含文本的圖案:

[0-9]+    <-- numbers from 0 to 9 and may repeat e.g. 1 or 02736 
\.     <-- followed by a single dot "." 
[0-9]+    <-- followed by repeatable numbers 
\.     <-- followed by a single dot "." 
[0-9]+    <-- followed by repeatable numbers 
[PZ]    <-- followed by a single P or Z, but not both 
[0-9]+    <-- and ends by repeatable numbers 

[A加成(+)意味着,括號之間的值是可重複的。 ]

有些模式:

  • 1.1.1P1
  • 1.1.1Z1
  • 100.100.100P100
  • 1.100.1P1

+0

@TobySpeight - 高興? – Dieter

相關問題