个性化阅读
专注于IT技术分析

如何从Java中的字符串中删除特殊字符

非字母或数字字符的字符称为特殊字符。我们应该从字符串中删除所有特殊字符, 以便我们可以清晰流畅地阅读字符串。特殊字符不可读, 因此最好在阅读前将其删除。

Java replaceAll()方法

String类的Java replaceAll()方法用替换替换该字符串中与给定正则表达式匹配的每个子字符串。

句法

public String replaceAll(String regex, String replacement)

此方法接受两个参数:

  • regex:这是字符串要匹配的正则表达式。它可能是不同的类型。
  • 替换:要替换的字符串。

它返回结果字符串。如果正则表达式语法无效, 则将引发PatternSyntaxException。上面的方法产生与表达式相同的结果:

Pattern.compile(regex).matcher(str).replaceAll(repl)

使用replaceAll()方法删除特殊字符的示例

在下面的示例中, removeAll()方法从字符串中删除所有特殊字符, 并在它们之间放置一个空格。

public class RemoveSpecialCharacterExample1
{
public static void main(String args[]) 
{
String str= "This#string%contains^special*characters&."; 
str = str.replaceAll("[^a-zA-Z0-9]", " ");
System.out.println(str);
}
}

输出量

This   string   contains   special   characters

在下面的示例中, 我们将所有特殊字符替换为空格。

public class RemoveSpecialCharacterExample2
{	
public static void main(String args[]) 
{
String str = "Hello+-^Java+ -Programmer^ ^^-- ^^^ +!";
str = str.replaceAll("[-+^]*", " ");
//str=str.replaceAll("\\W", " ")	//we can also use this regular expression
System.out.println(str);
}
}

输出量

Hello Java   Programmer    !

使用用户定义的逻辑删除特殊字符的示例

在以下示例中, 我们定义了从字符串中删除特殊字符的逻辑。我们知道大写字母的ASCII值从65到90(A-Z), 小字母的ASCII值从97到122(a-z)。每个字符与其对应的ASCII值进行比较。如果两个指定条件都返回true, 则返回true, 否则返回false。 for循环执行直到字符串的长度。当字符串达到其大小时, 它将终止执行, 并得到结果字符串。

public class RemoveSpecialCharacterExample3 
{
public static void main(String[] args) 
{
//declare a string having special characters 
String str="Pr!ogr#am%m*in&g Lan?#guag(e";
String resultStr="";
//loop execute till the length of the string 
for (int i=0;i<str.length();i++)
{
//comparing alphabets with their corresponding ASCII value
if (str.charAt(i)>64 && str.charAt(i)<=122) //returns true if both conditions returns true
{
//adding characters into empty string 
resultStr=resultStr+str.charAt(i);
}
}
System.out.println("String after removing special characters: "+resultStr);
}
}

输出量

String after removing special characters: ProgrammingLanguage

赞(1)
未经允许不得转载:srcmini » 如何从Java中的字符串中删除特殊字符

评论 抢沙发

评论前必须登录!