社区
Java SE
帖子详情
180分高分,求解一个替换问题!谢谢!急!!
jk3278jk
2004-10-25 11:34:18
要求实现:
String str ="中国123abc中国";
实现结果为: "中国 123abc 中国"
就是将英文aciis码小于128的字串与中文之间用空格隔开。
如果实现?急。。 解决后立即给分。
...全文
109
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
打赏
举报
回复
那就挨个找了,这一次的和上一次的比较,满足条件就插入空格。
软考高项论文50
分
秘籍——心法篇
讲师以52
分
和53
分
通过论文,2次
高
分
通过,方法论经得起考验
强化学习
求解
组合最优化
问题
的研究综述
近年来,强化学习(RL)在无人驾驶、工业自动化等领域的广泛应用,显示出强大的决策力和学习能力,故而诸多研究者尝试使用RL
求解
COP
问题
,为
求解
此类
问题
提供了一种全新的方法。首先简要梳理常见的COP
问题
及其RL的基本...
MATLAB cvx工具箱中常用的
替换
函数汇总,解决表达式报错
问题
本文总结了cvx中常见的一些
替换
函数,使用cvx中有一些专有的、特殊的函数来
替换
表达式会解决很多cvx编程错误。内容包括一些基础函数:abs、max...,和进阶函数:inv_pos(),norm_inv_pos(x, p),pow_p(x, p),rel_...
浪潮“源”AI大模型如何
求解
数学应用题
浪潮“源”AI大模型如何
求解
数学应用题
Floyd算法的手工快速
求解
关于Floyd算法的手工快速
求解
,对考研数据结构大大滴有好处,如果感觉有用的话点个赞吧。 一、题目 利用Floyd算法求下图任意两顶点间的最短路径(图片来自天勤2021年数据结构
高
分
笔记) 二、步骤 1.把图转成邻接...
Java SE
62,615
社区成员
307,307
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章