社区
Java SE
帖子详情
180分高分,求解一个替换问题!谢谢!急!!
jk3278jk
2004-10-25 11:34:18
要求实现:
String str ="中国123abc中国";
实现结果为: "中国 123abc 中国"
就是将英文aciis码小于128的字串与中文之间用空格隔开。
如果实现?急。。 解决后立即给分。
...全文
123
11
打赏
收藏
180分高分,求解一个替换问题!谢谢!急!!
要求实现: String str ="中国123abc中国"; 实现结果为: "中国 123abc 中国" 就是将英文aciis码小于128的字串与中文之间用空格隔开。 如果实现?急。。 解决后立即给分。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jackkui
2004-10-25
打赏
举报
回复
用正则表达式
这个表达式可以得到所有的ASCII的字符串数组,不过有的为空,要去掉
String[] temp1 = str.split("[^\\p{ASCII}]");
这个表达式得到所有的非ASCII的字符串数组,俄有时去掉所有的空字符串
String[] temp2 = str.split("[(\\p{ASCII})+]");
然后把祛除空后的字符串数组,进行连接就行了,他们肯定是间隔为一的
连接时添加上相应的空格就行了吧.
baijsp
2004-10-25
打赏
举报
回复
靠!楼主说话还是算话的呀!哈哈
playboylee
2004-10-25
打赏
举报
回复
递归第一个与第二个字符是否在大于128,如果是的话,中间加空格.细节问题慢慢来。。。顶
j2nix
2004-10-25
打赏
举报
回复
class Test
{
public static void main(String[] args)
{
String str =args[0];
String sb = "" + str.charAt(0);
char c1;
char c2;
for (int i=1; i<str.length(); i++)
{
c1 = str.charAt(i-1);
c2 = str.charAt(i);
if ((c1 - 128) * (c2-128) < 0)
{
sb = sb + " " + c2;
}
else
sb = sb + c2;
}
System.out.println(sb);
}
}
以上运行性能很差,只是想说明思路。
baijsp
2004-10-25
打赏
举报
回复
楼主的信誉分太低了,不知道你是不是说话算数的人!呵呵
tomuno
2004-10-25
打赏
举报
回复
输入时分成两个区域可以么?
边城狂人
2004-10-25
打赏
举报
回复
/*
* @(#) Test.java
* Create By James Fancy
*/
package jamesfancy;
public class Test {
public static String convert(String s) {
if (s.length() < 1) {
return s;
}
StringBuffer buffer = new StringBuffer(s);
boolean isLetter = buffer.charAt(0) < 256;
for (int i = 1; i < buffer.length(); ++i) {
char ch = buffer.charAt(i);
if ((ch < 256) ^ isLetter) {
buffer.insert(i, ' ');
isLetter = !isLetter;
}
}
return buffer.toString();
}
public static void test() {
String str = "中国123abc中国a";
System.out.println(convert(str));
}
public static void main(String[] args) {
test();
}
}
fireredfox
2004-10-25
打赏
举报
回复
那就挨个找了,这一次的和上一次的比较,满足条件就插入空格。
____________________________________________________________-
同意
PS:怎么楼主的信誉才5阿,低的可怜的说!
hsdxhc
2004-10-25
打赏
举报
回复
当然不是逐个byte比较,看有多宽咯。
hsdxhc
2004-10-25
打赏
举报
回复
全部转化为unicode,再转化为byte[],相临做比较比较,不同则插入一个空格。
j2nix
2004-10-25
打赏
举报
回复
那就挨个找了,这一次的和上一次的比较,满足条件就插入空格。
压轴大题
高
分
练四.doc
- 判断直线与抛物线是否相切,需要联立两个方程,通过判别式Δ=0来确定直线是否与抛物线只有
一个
交点,从而得出直线l的方程。 2. 抛物线上的两点连线的中垂线
问题
: - 计算线段AB的长度,利用中点坐标公式得到中...
联合多流融合和多尺度学习的卷积神经网络遥感图像融合方法.docx
但是,当前基于深度学习的方法存在两个
问题
:一是普遍忽略了 MS 上采样的重要性,直接使用上采样后的 MS 图像而不是利用深度学习强大的特征提取能力直接将原始 MS 图像作为输入;二是不同尺度下可以观察到不同的特征...
江苏专转本高数 同方内部讲义
- 部
分
题目如13、14、15、16、17、19等计算题,要求学生能处理复合函数的极限
问题
,应用极限运算法则进行
求解
。 8. **
求解
常数**: - 部
分
题目如18、24,要求学生通过已知条件
求解
未知常数,体现了对函数关系的...
利用Matlab实现基于小波变换的遥感图像融合
Matlab是
一个
强大的数学计算软件,特别适合进行复杂的数值计算和科学工程
问题
的
求解
。其内置的小波工具箱提供了一系列小波
分
析函数,使得用户无需深入理解复杂的数学公式,即可轻松进行小波变换和图像处理。通过...
《高等数学A》课堂笔记——
高
分
必过.pdf
高等数学是理工科学生必修的基础课程,涵盖了广泛的概念和理论,对于理解并解决复杂的科学
问题
至关重要。以下是对《高等数学A》课堂笔记中的主要知识点的详细解释: **一、函数与极限** 1. **映射与函数**:映射是...
Java SE
62,629
社区成员
307,261
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章