替换包含数字或特殊符号的字符串中的单词

时间:2016-03-12 09:13:09

标签: java regex string

我有一个下面的字符串。

String str = "Test!T Test1Test Test1 Test!";

此字符串中的案例数:

  
      
  1. Test!T:此单词包含特殊的charcater !
  2.   
  3. Test1Test:此单词包含数字1
  4.   
  5. Test1:此单词的末尾包含数字1
  6.   
  7. Test!:此单词的末尾包含特殊字符!
  8.   

现在我想从上面的字符串中替换这些单词,其中包含单词中的字符或数字,意思是(case 1 and 2)在我的情况下测试!T和Test1Test将被空格替换。

预期输出:Test1 Test!

如何从定义的字符串中替换1或2个案例?

1 个答案:

答案 0 :(得分:2)

您可以使用像[a-zA-Z]++\\S+[a-zA-Z]+这样的简单正则表来实现它。

以下是代码段:

public static void main (String[] args)
{
    String str = "Test!T Test1Test Test1 Test!";
    System.out.println(str.replaceAll("[a-zA-Z]++\\S+[a-zA-Z]+",""));
}

输出:

Test1 Test!