java替换特殊字符_Java StringBuffer替换特殊字符
在本实例中为保证学生输入的 Java 文件名合格,将利用 StringBuffer 类实现对 Java 文件名中的特殊符号进行替换,包括将中文状态下的“。”和全角状态下的“.”替换为英文状态下的“.”。
在本例实现过程中主要使用了 StringBuffer 类的字符查找和替换方法,实现代码如下:
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 + "\r\n提交成功!");
} else if (errIndex2 != -1 && file.substring(errIndex2 + 1, file.length()).equals("java")) {
// 将全角状态下的"."改为英文状态下的"."
file.setCharAt(errIndex2, '.');
System.out.println("你的书写有误,已改正为:" + file + "\r\n提交成功!");
} else {
System.out.println("你提供的java文件名称有误,请核实!");
}
}
}
运行该程序,当用户录入的 Java 文件名称中的为中文状态的“。”和“.”时,修改为英文状态下的“.”,然后再进行提交,如下所示:
请输入你要提交的Java文件名称:
myexapmle。java
你的书写有误,已改正为:myexample.java
在该程序中,实现替换特殊字符步骤如下所示:
定义了一个 String 类型的变量,并赋值为用户输入的 Java 文件名称。
使用 StringBuffer 的 StringBuffer(String str) 构造函数将该变量的值作为 StringBuffer 对象的值。
获取用户输入字符串中(英文和中文)的位置。
使用多重 if 选择语句判断用户输入的字符串中是否包含英文状态下的,并且后面的字符串是否为“java”,如果条件成立,则表示用户输入的信息无误,提交成功。
在 else if 中判断用户输入的字符串中是否包含中文状态下的“。”和“.”,并且“。”和后面的字符串为“java”,如果判断通过,则调用 StringBuffer 类中的 setCharAt() 方法修改“。”为“.”,再提交。
java替换特殊字符_Java StringBuffer替换特殊字符相关推荐
- java 正则表达式过滤_java正则表达式过滤特殊字符
Java用正则表达式 过滤特殊字符,只允许中文.字母Java用正则表达式 过滤特殊字符,只允许中文.字母或数字,该怎么写? String s1="我是正确测试数据aasdf2342343AS ...
- java 正则替换 或_Java正则替换
/** * 替换上下文 * * @author tianhongjun * */ static class EvaluateContext { private int startPos; privat ...
- java 正则出特殊字符_java正则_特殊字符处理
一.特殊字符转义 点的转义:. ==> \\u002E 美元符号的转义:$ ==> \\u0024 乘方符号的转义:^ ==> \\u005E 左大括号的转义:{ ==> \\ ...
- java校验特殊字符_java中文及特殊字符的校验方法
本文实例为大家分享了Android九宫格图片展示的具体代码,供大家参考,具体内容如下 1.关于Character.UnicodeBlock的介绍 CJK的意思是"Chinese,Japane ...
- java校验特殊字符_java 中文及特殊字符校验
java 中文及特殊字符校验 CreateTime--2017年8月25日16:54:50 Author:Marydon 一.参考链接 二.具体实现 1.关于Character.UnicodeBloc ...
- java nul 字符_Java字符串替换和NUL(NULL,ASCII 0)字符?
用空字符替换字符中的字符甚至在Java中工作吗?我知道'\ 0'会终止一个c字符串. 这取决于你如何定义工作.是否用'\0'替换了所有出现的目标字符?绝对! String s = "food ...
- java正则手机号_Java正则替换手机号代码实例
在日常生活中,我们经常会遇到将一个手机号的4-7位字符串用正则表达式替换为为星号"*".这是出于对安全性和保护客户隐私的考虑将程序设计成这样的.下面我们就来看看具体代码. pack ...
- java正则表达式 替换空格_Java正则表达式替换移除空行和多余的空格
这几天重拾Java写代码,须要操做文本文件中的内容.正则表达式 最终,要把内容里的空行和多余的连续空格移除,使用String里的replace或者replaceAll,试了不少次都没有成功.spa 最 ...
- java正则包含特殊字符_java – 捕获由特殊字符嵌套/包含的正则表达式组
我正在尝试搜索出现在波浪号(〜)符号边框内的单词. e.g. ~albert~ is a ~good~ boy. 我知道这可以通过使用〜来实现. ?〜,它已经适合我了.但是有些特殊情况需要匹配嵌套的波 ...
最新文章
- go语言panic机制的原理
- 跳车开发者Pokkst自述——从BTC到BCH
- 用 Redis 实现分布式锁(分析)
- APP技巧:微信中这6个设置建议关闭,可以防止个人信息或将全暴露,赶快看一看吧!...
- ArcGIS API for Silverlight中legend控件显示图例问题
- 略论bs架构设计的几种模式
- java装箱和拆箱的意义_java的自动拆箱和装箱是每个程序员都要知道的
- C语言入门篇(二)指针的介绍和运用
- Form表单的五个属性
- IT程序猿常用编辑工具:UltraEdit for Mac v21.00.0.12中文版
- 2019版PHP自动发卡平台源码
- 梦幻西游玩家最多的服务器,都说你是《梦幻西游》老玩家,这5个著名服务器你知道几个?...
- 707. 设计链表(中等 链表)
- 股指期货术语大全(股指期货的意思)
- uniapp的项目,scss和js实现跑马灯
- Swing交通罚单管理系统java车辆违章缴费金额查询交警信息jsp源代码Maven数据库mysql
- 【深度学习技巧】数据扩充--常规手法
- 交换机获取MAC地址
- greasemonkey_在Firefox中更改或设置Greasemonkey脚本编辑器
- 超火表白代码,心心(html+css)
热门文章
- php简单的用户留言板实现内容(1-23)
- Python 模块(二)
- 深入浅出requireJS-1
- springmvc resources 配置
- sql server存储过程中解决单引号的问题
- MFC的六大关键技术
- PHP中foreach遍历循环的使用(两种用法)
- 毕设ssm商城系统_ssm商城系统(爱淘淘购物)项目源码
- 快递下单后取消订单_网约车定位地点不动,男子别的平台下单,没取消订单要付6.6元...
- 编程题走迷宫_C++程序算法题----迷宫(一)