在这样的模式中拆分字符串'),('

时间:2014-08-05 18:01:41

标签: java android sqlite

在我的Android数据库应用程序中,我需要分开一个包含长sql语句的

sql=INSERT INTO table (r1) VALUES ('value1'),('value2'),('value3')... etc

进入几个短路,我需要在char序列中分割一个字符串,如'),(',但似乎Java无法识别括号。

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:1)

您可以使用\来拆分括号

sql.split("'\\),\\('");

答案 1 :(得分:0)

()是正则表达式中的特殊字符,因此您必须使用\来转义它们。尝试

"\\),\\("

你需要2个反斜杠,因为你需要为第一个转义java。

答案 2 :(得分:0)

在java中编写时,可以使用StringTokenizer并通过删除括号来构造新的sql。使用“(”“(”作为分隔符。