在做跨国电商的时候,需要满足多语言需求,这里就需要用到正则来快速、精准的替换
在查找的时候勾选上Regex(正则)表达式,那么idea会根据你填写的正则去匹配内容,比如下列是匹配双引号包含起来的任意长度字符串。
替换就用到了正则表达式的“group”这个功能:
将() 之间的表达式定义为“组”(group),并且将匹配这个表达式的字符保存到一个临时区域(一个正则表达式中最多可以保存9个),它们可以用 \1 到\9 的符号来引用。
例如:
\"(.*[\u4e00-\u9fa5]?)\" #匹配被双引号包含起来的任意长度字符串(允许中文),作为组1
FYUtils.fyParams("$1") #取出组1的值
替换后
稍微有一丢丢难度的案例:
#匹配被双引号包含起来的任意长度字符串(允许中文), 并且是单个数字结尾的,将字符串作为组1,将结尾的数字作为组2。
\"(.*[\u4e00-\u9fa5]?)(\d)\"
#分别取出组一的值和组二的值
FYUtils.fyParams("$1","$2")
例如
替换后