正则表达式匹配${xxx}

版权声明:本文为博主九师兄(QQ群:spark源代码 198279782 欢迎来探讨技术)原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_21383435/article/details/81631936

1.匹配${xxx},包括${}符号以及内容

update demo1 set ptime=${bizDate+1} dsd
update demo1 set ptime=${bizDate} sd
update demo1 set ptime=${ bizDate }
update demo1 set ptime=${bizDate +1}
update demo1 set ptime=${bizDate+ 1}
update demo1 set ptime=${bizDate+1 }
update demo1 set ptime=${ bizDate + 1 }
update demo1 set ptime=${bizDate + 1 }

使用正则表达式

\$\{.*\}

匹配结果

共找到 8 处匹配:
${bizDate+1}
${bizDate}
${ bizDate }
${bizDate +1}
${bizDate+ 1}
${bizDate+1 }
${ bizDate + 1 }
${bizDate + 1 }

但是这个只能匹配一行的所有,用重大BUG,曾经因为这个被批评,局限性

update demo1 set ptime=${bizDate+1} dsd,update demo1 set ptime=${bizDate} sd

匹配结果

${bizDate+1}${bizDate}

是一个字符串,并不是单独的一个

改良版

\$\{\s*(\w+)\s*(([\+\-])\s*(\d+)\s*)?\}

改良版(格式限制版)

\$\{(\w+)\s*(([\+\-])\s*(\d+))?\}

不限制版

\$\{(.*?)\}

猜你喜欢

转载自blog.csdn.net/qq_21383435/article/details/81631936
今日推荐