我有一个像
这样的字符串"isnull(col_name,0)<>1 or isnull(col1_name,0)=0 and isnull(col2_name,0)>=100... "
我想将上面的字符串转换为以下形式:
“(col_name is null or col_name<>1)
或(col1_name is null or col1_name=0)
和(col2_name is null or col2_name>=100)
...”
我想用JAVA实现这个。我尝试过使用 split 函数,但情况并非每次都相似(意味着两个之间可能有“OR”或“AND”,那么如何拆分?)。 然后我尝试使用 contains 函数,但如何以所需的形式替换 isnull 的完整部分。 (我也尝试过使用字符数组,它工作得很好,但根据我的代码在某个地方失败了。)
实际上,我尝试了很多不同的方法,但我无法构建快速运行的良好逻辑。
请给我一些好主意。抱歉我的英语不好。
谢谢。
最佳答案
str.replaceAll("isnull\\(([^,]+),\\d+\\)([^\\d]+)(\\d+)", "($1 为空或 $1$2$3)");
关于java - 想要将一种形式的字符串转换为另一种形式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9377589/