如何为java replaceall函数编写正则表达式?

如何为java replaceall函数编写正则表达式?,java,regex,replace,replaceall,Java,Regex,Replace,Replaceall,我有一个字符串变量,它包含 {IF {FILLIN PDPremium \* MERGEFORMATPDPremium }= " 0.00" "" "Property DamageSectionInsured ItemsSum Insured( {FILLIN si_curr \* MERGEFORMATsi_curr })Premium( {FILLIN si_curr \* MERGEFORMATsi_curr }) {FILLIN covg_desc_temp \* MER

我有一个字符串变量,它包含

{IF {FILLIN  PDPremium  \* MERGEFORMATPDPremium }= " 0.00" "" "Property DamageSectionInsured ItemsSum Insured( {FILLIN  si_curr  \* MERGEFORMATsi_curr })Premium( {FILLIN  si_curr  \* MERGEFORMATsi_curr }) {FILLIN  covg_desc_temp  \* MERGEFORMATcovg_desc_temp } {FILLIN  covg_si  \* MERGEFORMATcovg_si } {FILLIN  covg_prem  \* MERGEFORMATcovg_prem }"pol_tc_cdpol_tc_desc }
我想换一个

{FILLIN  PDPremium  \* MERGEFORMATPDPremium } `{FILLIN  covg_si  \* MERGEFORMATcovg_si }
{PDPremium}{covg_si}

FILLIN  PDPremium  \* MERGEFORMAT 
使用空的

如何编写正则表达式 我的程序是这样的

public static void main(String[] args) {
    String a = "IF {FILLIN  PDPremium  \\* MERGEFORMATPDPremium }";
    System.out.println(a.replaceAll( "(?i)(FILLIN[^>]*?\\sMERGEFORMAT\\s*)", "" ));

}
试试这个:

String p = "FILLIN [^\\\\]+\\\\\\\* MERGEFORMAT";
System.out.println(a.replaceAll(p , "" ));

{FILLIN PDPremium\*MERGEFORMATPDPremium}
->
{PDPremium}
我想要这样请理解何时使用REGEX,何时不使用。如果要替换字符串文字,请使用字符串#替换为字符串文字作为参数i有许多类似的情况
{FILLIN PDPremium\*MERGEFORMATPDPremium}
需要替换所有PDPremium可以是任何东西