# Java 难题：好的字符串 – 坏的字符串

> 原文： [https://howtodoinjava.com/puzzles/java-puzzle-good-string-bad-string/](https://howtodoinjava.com/puzzles/java-puzzle-good-string-bad-string/)

**拼图：** Chandu 非常喜欢字符串。 （或者他认为！）但是，他不喜欢具有相同连续字母的字符串。 没有人知道为什么会这样。 他称这些字符串为不良字符串。 因此，好的字符串是没有相同连续字母的字符串。 现在，问题很简单。 给定字符串 S，您需要将其转换为好字符串。

您只需要执行一项操作 - 如果有两个相同的连续字母，则删除其中一个。

## 解决方案

我相信使用正则表达式只能解决此问题。 我编写了一个示例程序来解决它。 请随时根据要求修改正则表达式。

```java
public class GoodStringBadString
{
    public static void main(String[] args)
    {
        String input = "Good Oops, Bad Oops";
        String output = input.replaceAll("(?i)(\\p{L})\\1", "$1");
        System.out.println(output);
    }
}
```

```java
Output: God Ops, Bad Ops
```

**祝您学习愉快！**