`
jilong-liang
  • 浏览: 472458 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类

下面有一个字符串如:abcbc,如何替换成afff输出不能用String,replace替换也不用replaceAll("bc","ff");

    博客分类:
  • Java
阅读更多

public class Test9 {

/**

 * 下面有一个字符串如:abcbc,如何替换成afff输出,

 * 不能用String,replace替换也不用replaceAll("bc","ff"); 

 * 用了replace和replaceAll都不给分,也无效

 */

public static void main(String[] args) {

       System.out.println(replace("abcbc""bc""ff"));//只能用这种

 

       String Str="abcbc";

       Str=Str.replace("bc""ff");

       Str=Str.replaceAll("bc""ff"); 

       System.out.println(Str);

 

}

public static String replace(String param, String old, String _new)  {

       String value = "";

       int repLen = old.length();

       int val;

       while ((val = param.indexOf(old)) != -1) {

            value += param.substring(0, val);

            value += _new;

            param = param.substring(val + repLen);

   }

           value += param;

      return value;

}

}

0
5
分享到:
评论
4 楼 jxxfldt 2013-11-15  
public static String replace(String s, String oldStr, String newStr) {
char[] value = s.toCharArray();
char[] oldArr = oldStr.toCharArray();
int oldStrLength = oldArr.length;
int length = value.length;
boolean bool = false;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < length; i++) {
if (value[i] == oldArr[0]) {
for (int j = 1; j < oldStrLength; j++) {
if ((i + j) < length && value[i + j] == oldArr[j]) {
bool = true;
} else
bool = false;
}
}
if (bool) {
sb.append(newStr);
bool = false;
i += oldStrLength-1;

} else {
sb.append(value[i]);
}

}
return sb.toString();

}
写了另外一种 请指教
3 楼 jilong-liang 2013-03-25  
jiaohuizhe 写道
错了,把StringBuilder ss=new StringBuilder();这行删除就好了,刚刚试了下StringBuilder。
O(∩_∩)O谢谢提出~~受教 呵呵
2 楼 jiaohuizhe 2013-03-25  
错了,把StringBuilder ss=new StringBuilder();这行删除就好了,刚刚试了下StringBuilder。
1 楼 jiaohuizhe 2013-03-25  
你写的方法有问题,如果是从bc替换为abc则会变成死循环了,而且替换操作建议使用StringBuffer或StringBuilder,下面我用StringBuffer写了一段

public static String replace(String param, String old, String _new) {
StringBuilder ss=new StringBuilder();
StringBuffer sb=new StringBuffer(param);
int index=0;
while((index=sb.indexOf(old,index))!=-1) {
sb.delete(index,index+old.length());
sb.insert(index,_new);
index+=_new.length();
}
return sb.toString();
}

相关推荐

    C语言字符串快速压缩算法代码

    请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。 压缩规则: 1、仅压缩连续重复出现的字符。比如字符串”abcbc”由于无连续重复字符,压缩后的字符串还是”abcbc”。 2、...

    2018年下半年网络工程师考试上午真题

    2018年下半年网络工程师考试上午真题答案 1-5 DCABA 6-10 CDCDB 11-15 CCBBD ...26-30 ABCBC 31-35 ADADD 36-40 ADCCC 41-45 BBDBB 46-50 CDBAC 51-55 BDDAB 56-60 CBABD 61-65 AACAA 66-70 CBABA 71-75 BACDA

    基于springboot开发的前后端分离的简易进销存后台管理系统.zip

    基于springboot的java毕业&课程设计

    基于springboot-mqtt的温度、湿度、六氟化硫浓度实时监控系统.zip

    基于springboot的java毕业&课程设计

    会计信息化对华强公司内部审计的影响研究.docx

    会计信息化对华强公司内部审计的影响研究.docx

    修改谷歌提供的样例量子卷积神经网络模型,基于KDD99数据集进行训练,实现了网络攻击分类检测。.zip

    卷积神经网络(Convolutional Neural Networks, CNNs 或 ConvNets)是一类深度神经网络,特别擅长处理图像相关的机器学习和深度学习任务。它们的名称来源于网络中使用了一种叫做卷积的数学运算。以下是卷积神经网络的一些关键组件和特性: 卷积层(Convolutional Layer): 卷积层是CNN的核心组件。它们通过一组可学习的滤波器(或称为卷积核、卷积器)在输入图像(或上一层的输出特征图)上滑动来工作。 滤波器和图像之间的卷积操作生成输出特征图,该特征图反映了滤波器所捕捉的局部图像特性(如边缘、角点等)。 通过使用多个滤波器,卷积层可以提取输入图像中的多种特征。 激活函数(Activation Function): 在卷积操作之后,通常会应用一个激活函数(如ReLU、Sigmoid或tanh)来增加网络的非线性。 池化层(Pooling Layer): 池化层通常位于卷积层之后,用于降低特征图的维度(空间尺寸),减少计算量和参数数量,同时保持特征的空间层次结构。 常见的池化操作包括最大池化(Max Pooling)和平均池化(Average Pooling)。 全连接层(Fully Connected Layer): 在CNN的末端,通常会有几层全连接层(也称为密集层或线性层)。这些层中的每个神经元都与前一层的所有神经元连接。 全连接层通常用于对提取的特征进行分类或回归。 训练过程: CNN的训练过程与其他深度学习模型类似,通过反向传播算法和梯度下降(或其变种)来优化网络参数(如滤波器权重和偏置)。 训练数据通常被分为多个批次(mini-batches),并在每个批次上迭代更新网络参数。 应用: CNN在计算机视觉领域有着广泛的应用,包括图像分类、目标检测、图像分割、人脸识别等。 它们也已被扩展到处理其他类型的数据,如文本(通过卷积一维序列)和音频(通过卷积时间序列)。 随着深度学习技术的发展,卷积神经网络的结构和设计也在不断演变,出现了许多新的变体和改进,如残差网络(ResNet)、深度卷积生成对抗网络(DCGAN)等。

    用泽尼克多项式拟合表面的功能matlab代码.zip

    1.版本:matlab2014/2019a/2021a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    毕业设计基于java+Springboot+协同过滤的新闻推荐系统源码+全部资料(高分项目).zip

    毕业设计基于java+Springboot+协同过滤的新闻推荐系统源码+全部资料(高分项目本资源中的源码都是经过本地编译过可运行的,评审分达到95分以上。资源项目的难度比较适中,内容都是经过助教老师审定过的能够满足学习、使用需求,如果有需要的话可以放心下载使用。 【备注】 1、该项目是个人高分毕业设计项目源码,已获导师指导认可通过,答辩评审分达到95分 2、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 3、本项目适合计算机相关专业(如软件工程、计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也可作为毕业设计、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 4、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。毕业设计基于java+Springboot+协同过滤的新闻推荐系统源码+全部资料(高分项目毕业设计基于java+Springboot+协同过滤的新闻推荐系统源码+全部资料(高分项目毕业设计基于java+Springboot+协同过滤的新闻推荐系统源码+全部资

    基于vue可视化前段开发的拖拽编辑,页面生成工具.zip

    基于vue可视化前段开发的拖拽编辑,页面生成工具.zip

    HLC直播视频流播放器

    HLC直播视频播放器示例代码,代码2021年的时候因工作需要实现,参考网上资源采用了jquery等框架。

    基于卷积循环神经网络的数字识别.zip

    基于卷积循环神经网络的数字识别

    课设毕设基于SpringBoot+Vue的家具销售电商平台 LW+PPT+源码可运行.zip

    课设毕设基于SpringBoot+Vue的家具销售电商平台 LW+PPT+源码可运行.zip

    2007开关稳压电源(E题).doc

    包含作品的设计论文doc文档,可直接修改,适合于电赛备赛、课程设计、毕设参考等。 摘 要 该电源以单端反激式DC-DC变换器为核心。市电通过自耦式调压器,隔离变压器,整流滤波后产生直流电压,经DC-DC变换得到题目所需输出电压,实现了开关稳压电源的设计。DC-DC变换器采用脉宽调制器(PWM)UC3842,通过调节占空因数使得输出电压UO在30V~36V范围内可调;微控制器与键盘显示构成了控制显示模块,能对输出电压进行键盘设定和步进调整,并显示输出电压、电流的测量和数字显示功能,形成了良好的人机界面。 关键词:DC-DC变换器,脉宽调制器(PWM)

    520节日画图代码.zip

    520是每年的5月20日,因数字“520”与“我爱你”发音相似而被许多年轻人用作表达爱意的节日。这个节日起源于中国互联网文化,逐渐传递到其他国家和地区。在这一天,情侣们通常会互送礼物、发表情、或者举行浪漫的活动来庆祝爱情。快来领取专属于程序员的浪漫吧!表白的套路很多,但都少不了送花送礼物,作为一个程序员,搞不懂现在流行的泡泡机、小猪、重力感应车等玩具,也不想去让朋友们去送钱炫耀,毕竟真情才重要,钱就物质了。我能给各位单身粉丝们做的可能就只有分享几个表白代码了,在电脑上敲上几行代码,让她在郁闷的周一得到一个大大的惊喜,很简单,一看就会,如果现在用不到也不要紧,先收藏起来,反正这样的节日很多,以后用的时候能找到。

    带你学AI基于PP-OCR和ErnieBot的字幕提取和智能视频问答

    本次分享将带领大家从 0 到 1 完成一个基于 OCR 和 LLM 的视频字幕提取和智能视频问答项目,通过 OCR 实现视频字幕提取,采用 ErnieBot 完成对视频字幕内容的理解,并回答相关问题,最后采用 Gradio 搭建应用。本项目旨在帮助初学者快速搭建入门级 AI 应用,并分享开发过程中遇到的一些坑,希望对感兴趣的同学提供一点帮助。 参考https://blog.csdn.net/u010522887/article/details/139025542,跟随笔者共同走完一个完整的视频问答项目,从基础的动手跑通 CRNN 文本识别任务,再到应用开发和部署,旨在帮助初学者快速入门 OCR 相关技术并搭建一个简单的应用。 资源包包括前端文档中提到的源码和示例视频。 本系列的后续文章将沿袭这一思路,继续分享更多采用 Paddle 深度学习框架服务更多产业应用的案例。如果对你有帮助,欢迎 **关注 收藏** 支持

    毕设设计-学生宿舍管理系统 基于SpringBoot实现,界面简洁,功能完善

    毕设设计-学生宿舍管理系统 基于SpringBoot实现,界面简洁,功能完善 主要功能 ● 定位打卡、宿舍智能分配、学生信息管理、资讯管理(权限设计)等 使用 ● mysql、git、springboot ● 数据库初始化sql存储在doc文件夹下面 设计一个基于Spring Boot的学生宿舍管理系统,你需要确保系统既满足实用性,又保证界面简洁、功能完善。以下是一个基本的设计方案,包括系统的功能模块、技术栈选择和界面设计要点。 ### 功能模块 1. **用户认证模块**: - 登录/登出功能。 - 用户权限管理(如学生、宿舍管理员、系统管理员)。 2. **学生信息管理**: - 学生基本信息录入、查询、修改和删除。 - 宿舍分配与调换。 3. **宿舍楼管理**: - 宿舍楼信息维护。 - 宿舍房间信息管理。 4. **维修报修管理**: - 学生报修申请。 - 维修状态跟踪。 5. **来访登记管理**: - 来访人员登记。 - 访问记录查询。 6. **公告与通知发布**: - 发布宿舍相关公告和通知。

    源码小游戏微信飞机大战

    源码小游戏微信飞机大战

    一个前后端分离的仿知乎问答论坛.zip

    基于springboot的java毕业&课程设计

    课程设计 基于Python的机器学习的人脸识别系统的设计与实现+详细文档+全部资料(高分项目).zip

    课程设计 基于Python的机器学习的人脸识别系统的设计与实现+详细文档+全部资料(高分项目).zip本资源中的源码都是经过本地编译过可运行的,评审分达到95分以上。资源项目的难度比较适中,内容都是经过助教老师审定过的能够满足学习、使用需求,如果有需要的话可以放心下载使用。 【备注】 1、该项目是个人高分毕业设计项目源码,已获导师指导认可通过,答辩评审分达到95分 2、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 3、本项目适合计算机相关专业(如软件工程、计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也可作为毕业设计、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 4、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。课程设计 基于Python的机器学习的人脸识别系统的设计与实现+详细文档+全部资料(高分项目).zip课程设计 基于Python的机器学习的人脸识别系统的设计与实现+详细文档+全部资料(高分项目).zip课程设计 基于Python的机器学习的人脸

    基于springboot+thymeleaf构建的保险出单系统(含后台管理系统).zip

    基于springboot的java毕业&课程设计

Global site tag (gtag.js) - Google Analytics