Java正则表达式连接单个字母

时间:2014-08-13 15:49:23

标签: java regex

我怀疑我需要环顾一下才能实现我想要的替换。

简单来说,我想将所有单个字母数字组合成一个术语。单个字母可以在句子的开头或中间。

  • A A Towing成为AA Towing(结合A + A)
  • PL B C J Enterprises成为PL BCJ Enterprises(Combine B + C + J)
  • A B CD E限制变为AB CD E限制(合并A + B)
  • 关于河流变成河流(没有变化)

1 个答案:

答案 0 :(得分:5)

您可以使用:

String str = "PL B C J";
String repl = str.replaceAll("(?<=\\b[A-Za-z]\\b) +(?=\\b[A-Za-z]\\b)", "");
//=> PL BCJ

RegEx Demo

说明:此正则表达式仅匹配1个或多个空格,如果后面跟一个字母,后面跟一个字母,并用空字符串替换匹配的空格。