2017-08-24 7 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

いけない==

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

Stringを比較しかし、あなたと同じ条件を行うことができます:

row1.CertificateName.endsWith("/") 

しかし、もちろん、正規表現は常に単純

row1.CertificateName.replaceAll("/$") 
これを行うためのソリューションです。

正規表現/$は、基本的にw ith /なので、その文字があれば削除します。

+0

それは魅力のように働いた。どうもありがとう!! – Enthusiast

+1

あなたは大歓迎です@Enthusiast。あなたが持っている三項条件の代わりに、正規表現を使うことができます。 – AxelH

+0

正規表現の部分を教えてくれてありがとう。私は今から2分後に有効な答えとしてこれを受け入れるでしょう。 – Enthusiast

関連する問題