Java中的正则表达式解决方案

时间:2017-02-03 08:26:16

标签: java regex string replace split

我是正则表达的新手。

我将测试一个字符串,它对正则表达式有效。

我的字符串如下:

`Select * from xddf_db.yyy_tte where adress = '[PARAM]' and surename like '%[ABC]'` .... can several times on the end with and/or

它可以以选择名称开头,但不能用*

`Select Name` .....

重要的是,括号字段应该以'[sdf]'开头和结尾,或者从来没有以extre [sdf]为例,这也是正确的。但不允许以叛逆者开始而不是结束。例如'[asd]那应该是错的。

下划线字符“_”可以在其中,但不是必须。

在/或没有叛逆者之间是正确的。这些字段可以有一个百分号符号(它用于Like函数)。例如,它是正确的'%[asd]'或%[asd]&纠正toobe。这也是正确的'[asd]%',但这是错误的:'%% [sdđ]%'。只允许一个。我希望你能用这种坚定的表达来帮助我们。

以下是清单:

允许:

Select * from xddf_db.yyy_tte where adress = '[PARAM]' and surename like '%[ABC]'
Select * from xddf_db.yyy_tte where adress = '[PARAM]' and surename like '%[ABC]&'
Select * from xddf_db.yyy_tte where adress = '[PARAM]' and surename like '[ABC]&'
Select Name from xddfdb.yyy where adress = '[PARAM]' and surename_abc ='[ABC]'
Select Name from xddfdb.yyy where adress = '[PARAM]' and surename_abc =[ABC]
Select * from xddfdb.yyy_tte where adress = '[PARAM]' and surename_abc =[ABC]
Select * from xddfdb.yyy_tte where adress = '[PARAM]' and surename_abc =[ABC] or post_dd like '%[ABC]'
Select * from xddfdb.yyy_tte where adress = '[PARAM]' and surename_abc =[ABC] or post_dd < [ABC] and post_dd > [ABD]

WRONG

Select * from xddfdb.yyy_tte where adress = [PARAM]' and surename_abc = '[ABC]
Select * from xddf_db.yyy_tte where adress = '[PARAM]' and surename like '%[ABC]&&'
Select Name from xddf_db.yyy_tte where adress = '[PARAM]' and surename like '%&[ABC]&&'

0 个答案:

没有答案