我有下面的字符串,我使用正则表达式分割并获得数组中的id,id,roduct_clinical_studies__rimr,product__rim,product__v。 这适用于大多数情况。但对于下面的字符串,因为临床中包含它fails.How我可以做IN/SELECT等的精确匹配正则表达式与字符串完全匹配
id IN (SELECT id FROM product_clinical_studies__rimr WHERE product__rim CONTAINS {{this.product__v}})
String[] parseString(String filterInString) {
return filterInString.replaceAll("(?i)CONTAINS|IN|SELECT|FROM|WHERE|(this\\.)|[(){}=,]|(\\s{2,})", " ").
replaceAll("\\s+", " ").split("\\s");
}
每个关键字之前或之后是什么?空格,行的开始,行的结尾?其他文字?你能否假设“IN”会被![A-Za-z0-9]和其他语法符号中的空白所包围?如“整个词”? –
您可以在每个术语之前和之后放置空格或单词边界('\ b')。 – phatfingers
我们为什么需要?: – javascriptlearner