2017-08-24 101 views
0

我在表中有一列,有些值有反斜槓/結束。我想刪除這些斜槓值並保留文本的其餘部分。所以可以說我有一個文本"myjunkdata/",它應該讓我回到"myjunkdata"。但是,以下情況不起作用。下面Talend tMap如果數學符號的條件爲字符串

Certified SOA Security Specialist/ 
Information Security Management Principles Foundation Certificate/ 
Check Point Certified Security Administrator R77/ 
Check Point Certified Security Expert R77/ 
Check Point Managed Security Expert/ 
Cisco Certified Network Associate Security 
Cisco Certified Network Professional Security 
Cisco Certified Internetwork Expert Security 
Cisco Certified Network Professional Security 

(StringHandling.RIGHT(row1.CertificateName,1) == "/") ? StringHandling.LEFT(row1.CertificateName,StringHandling.LEN(row1.CertificateName)-1) : row1.CertificateName 

例如數據誰能幫助?

+0

這隻適用於最後一個字符是'/'還是任何地方? – AxelH

+0

@AxelH僅適用於最後一個字符。就是這樣 – Enthusiast

回答

3

不要比較String==

StringHandling.RIGHT(row1.CertificateName,1).equals("/") 

但是你可以用做同樣的條件:

row1.CertificateName.endsWith("/") 

但當然,一個正則表達式總是這樣做只是

row1.CertificateName.replaceAll("/$") 
的解決方案

正則表達式/$基本上意味着結束w因爲/所以它會刪除該字符,如果它存在。

+0

它像魅力一樣工作。非常感謝!! – Enthusiast

+1

不客氣@Enthusiast。看到編輯,你可以使用正則表達式而不是三元條件。 – AxelH

+0

感謝您教育我的正則表達式部分。我會在接下來的2分鐘內接受這個有效答案,按照計算器規則 – Enthusiast