簡體   English   中英

將字符串查詢從一種形式轉換為另一種形式

[英]Converting string query from one form to another

我有一個包含使用布爾運算符的條件的字符串,例如:

 1)   OR(key1:value1,key2:value2,key3:value3)

 2)   AND(key1:value1,key2:value2,key3:value3,key4:value4,key5:value5)

 3)   NOT(key1:value1,key2:value2)

 4) AND(key1:value1,key2:value2,key3:value3,OR(key4:value4,key5:value5),NOT(key6:value6,key7:value7))

現在,我想將其轉換為另一種格式,如下所示:

1)    key1='value1' OR key2='value2' OR key3='value3'

2)    key1='value1' AND key2='value2' AND key3='value3' AND key4='value4' AND key5='value5'

3)    NOT(key1='value1' OR key2='value2')

4)    ( key1='value1' AND key2='value2' AND key3='value3' ) AND ( key4='value4' OR key5='value5') AND ( NOT(key6='value6' OR key7='value7'))

我正在通過此鏈接: 是否要將一種形式的字符串轉換為另一種形式?

但是我不清楚如何使用正則表達式來實現這一點。 請讓我知道如何在Java中執行此操作

使用String.replaceAll()方法。

public String replaceAll(String regex,
                         String replacement)

Replaces each substring of this string that matches the given regular 
expression with the given replacement. 

例如,對於第一個字符串-

"OR(key1:value1,key2:value2,key3:value3)"

你可以有

String string = "OR(key1:value1,key2:value2,key3:value3)";

string = string.replaceAll("OR","");
string = string.replaceAll("(","");
string = string.replaceAll(")","'");
string = string.replaceAll(":","='");
string = string.replaceAll(",","' OR ");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM