2016-10-22 5 views
-1

あなたは私だけではテーブル名を削除する必要があり、この文字列内のJavaコードJavaのStringは

I have a String like below 

String str1= "insert into CUSTOMER(CUSTOMER.Name, CUSTOMER.Age, CUSTOMER.city) values ('ASAL',22,'New Yark')" 
String str1 = "insert into CUSTOMER(Customer.Name, Customer.Age, Customer.city) values ('Thangam',23,'Sane')" 

で、以下のシナリオのための最適なソリューションを提供してくださいできる文字列から単語を交換します名。私の出力は

String str1= "insert into CUSTOMER(Name, Age, city) values ('ASAL',22,'New Yark')" 
String str1 = "insert into CUSTOMER(Name, Age, city) values ('Thangam',23,'Sane')" 

以下のように1つのシナリオのテーブル名に注意してくださいする必要があり、「顧客」と「顧客」として1 scenaroようです。

これを解決するには、最適な機能/解決策を提供してください。

+4

'str1 = str1.replace(" CUSTOMER。 "、" ");' – SMA

答えて

2
str1 = str1.replaceAll("(?i)\\bCUSTOMER\\.", ""); 

これは、大文字と小文字を区別しない(?i)、ワード境界\bを使用し、.をエスケープします。

ところで、プレースホルダのPreparedStatementのは、それがd'Artagnanのような名前をエスケープし、悪質なデータ入力の世話をするだけでなく、物事

String str1 = "insert into CUSTOMER(Name, Age, city) values (?,?,?)"; 

を簡素化することがあります。