Java中的正则表达式替换了奇数的斜杠

时间:2012-02-21 14:47:41

标签: java regex

我需要一个正则表达式,它将用偶数个斜杠替换奇数个斜杠,同时保留偶数个斜杠。

例如:

  • 测试/ 123 - >测试// 123
  • 测试// 123 - >测试// 123
  • 测试/// 123 - >测试////// 123

2 个答案:

答案 0 :(得分:1)

  Pattern p = Pattern.compile("(?<!/)/(//)*(?!/)");
  Matcher m = p.matcher(inputString);
  String outputStr = m.replaceAll("$0$0");
  • (?<!/)确保比赛前没有斜杠;
  • /(//)*匹配奇数个斜杠;
  • (?!/)确保比赛后没有斜杠。

替换字符串是$0$0,它会使匹配的斜杠加倍。

我已经在您的输入上对此进行了测试,它完全符合您的规范。

答案 1 :(得分:0)

(?<!/)((//)*/)(?!/)替换为您想要的任何内容。