在本例实现过程中主要使用了 StringBuffer 类的字符查找和替换方法,实现用Java替换特殊字符代码如下:
import java.util.Scanner
public class test2 {
public static void main(String[] args) {
System.out.println("请输入你要提交的Java文件名称:")
Scanner input = new Scanner(System.in)
String fileName = input.next()// 获取用户输入的 java 文件名称
// 定义StringBuffer对象,字符串内容为用户输入的java文件名称
StringBuffer file = new StringBuffer(fileName)
// 获取英文状态下的"."是否存在
int index = file.lastIndexOf(".")
// 判断中文状态下的"。"和"."是否存在
int errIndex1 = file.lastIndexOf("。")
int errIndex2 = file.lastIndexOf(".")
if (index != -1 &&file.substring(index + 1, file.length()).equals("java")) {
System.out.println("作业提交成功!")
} else if (errIndex1 != -1 &&file.substring(errIndex1 + 1, file.length()).equals("java")) {
// 将中文状态下的"。"改为英文状态下的"."
file.setCharAt(errIndex1, '.')
System.out.println("你的书写有误,已改正为:" + file + "rn提交成功!")
} else if (errIndex2 != -1 &&file.substring(errIndex2 + 1, file.length()).equals("java")) {
// 将全角状态下的"."改为英文状态下的"."
file.setCharAt(errIndex2, '.')
System.out.println("你的书写有误,已改正为:" + file + "rn提交成功!")
} else {
System.out.println("你提供的java文件名称有误,请核实!")
}
}
}[page]
Java替换特殊字符的方法是什么?运行该用Java替换特殊字符程序,当用户录入的 Java 文件名称中的为中文状态的“。”和“.”时,修改为英文状态下的“.”,然后再进行提交,如下所示:
请输入你要提交的Java文件名称:
myexapmle。java
你的书写有误,已改正为:myexample.java
在该程序中,实现替换特殊字符步骤如下所示:
定义了一个 String 类型的变量,并赋值为用户输入的 Java 文件名称。
使用 StringBuffer 的 StringBuffer(String str) 构造函数将该变量的值作为 StringBuffer 对象的值。
获取用户输入字符串中(英文和中文)的位置。
使用多重 if 选择语句判断用户输入的字符串中是否包含英文状态下的,并且后面的字符串是否为“java”,如果条件成立,则表示用户输入的信息无误,提交成功。
在 else if 中判断用户输入的字符串中是否包含中文状态下的“。”和“.”,并且“。”和后面的字符串为“java”,如果判断通过,则调用 StringBuffer 类中的 setCharAt() 方法修改“。”为“.”,再提交。
本篇《Java替换特殊字符的方法是什么?这些内容才是做好Java必须会的》到这里就已经结束了,并不是所有的数据类型都可以指定直接数量,通常只有三种类型:原语、字符串和NULL,环球网校的小编祝您PHP学习之路顺利,如果你还想知道更多Java知识,那么可以点击本站的其他文章进行学习。
Java清除字符串中的特殊字符,可以使用String类的replaceAll方法。
public String replaceAll(String regex,String replacement)
使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
调用此方法的 str.replaceAll(regex, repl) 形式与以下表达式产生的结果完全相同:
Pattern.compile(regex).matcher(str).replaceAll(repl)示范:
package com.dusd.codingpublic class Test01 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "abc-bcd"
System.out.println(str.replaceAll("-", ""))
}
}
输出:abcbcd
可考虑将文件装换为流来处理,或者将文件读取到的字符串转换为byte数组来处理以byte单位,
根据byte的范围来确认是否是特殊字符,替换为空字符。
或者使用正则匹配文件读取到的字符串,替换为空字符。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)