将字符串重复的字符替换成单个字符的正则表达式

java怎么样将字符串中重复的字符替换成单个字符的正则表达式

0

5个回答

 String str = "abaabcaaaad";
        String ret = str.replaceAll("[a]+", "a");//替换字符a
        System.out.println(ret);
2

char[] arr = new char[s.length()];
int j = 0;
outer:
for(int i=0;i<s.length();i++) {
char c = s.charAt(i);//字符串的每个字符
for(int k=0;k<j;k++) {//在j之前找重复
if(c == arr[k]) {//找到重复
continue outer;//跳到i++处理下一个
}
}
arr[j++] = c;//没有重复,放入j位置,j后移
}
arr = Arrays.copyOf(arr, j);
s = new String(arr);

1
zengyang105
Tao-yangZeng 我觉得编一个正则表达式来匹配 更好一点呢。。我试试您的方法 谢谢
接近 4 年之前 回复
zengyang105
Tao-yangZeng 我觉得编一个正则表达式来匹配 更好一点呢。。我试试您的方法 谢谢
接近 4 年之前 回复
0

danielinbiti给的答案很好,如果不知道哪个字符是重复的,可以遍历一遍,如果前后两个字符相等,即可将其作为需要修改的a存储在list,然后再对list中所有值执行上述操作。

0

这样 只 适用于 单个字符重复啊,如果多个字符重复呢

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
正则表达式替换某个字符
需要匹配指定位置的某个字符 示例:替换时间戳中的最后一个冒号为.号 //原始字符串 let str=&quot;18:78:45:222&quot; //匹配 let reg=/^(.{5,8}):(.*)$/g //替换 let result=str.replace(reg, &quot;$1*$2&quot;) 希望有更好的方法,看官们留个言呗...
正则表达式进行字符串替换!将奇数和偶数的字符串替换成不同的!并且忽略大小写查找...
Pattern p = Pattern.compile(&quot;java&quot;, Pattern.CASE_INSENSITIVE); Matcher m = p.matcher(&quot;java Java JaVa IloveJAVA you hate jaVAadsladl&quot;); StringBuffer buf = new StringBuffer(); int i = 0; w...
php 将一个字符串分割为组成它的字符
问: php里如何将一个字符串分割为组成它的字符? 比如hello  -> [h, e, l, l, o]   以下有三种方法:   这是需要被分割的字符串:  $str = 'Hello小样'; 字符串的长度:  $len = mb_strlen($str, 'utf8');// 7   第一种:  $arr = str_split($str); p($arr);
【python】字符串中多个字符替换为1个字符
from functools import reduce def replace_char(s, oldChar, newChar ): return reduce(lambda s, char: s.replace(char, newChar), oldChar, s) s = 'aaa,bbb/ccc|ddd\tzzz?ooo' new_s = replace_char(s, ',...
正则表达式-去除重复字符并替换
//正则表达式-去除重复字符并替换 class RegexTest { public static void main(String[] args) { //System.out.println("Hello World!"); test_1(); } /* 需求: 将下列字符串转成:我要学编程. 到底用四种功能
Oracle字符串分隔符替换(替换奇数个或偶数个)
罪恶,,,,居然在图书馆占位子,,, 标题不知道怎么写比较适合,这是群里面一个小伙伴问我的问题,一番折腾后感觉思路比较有意思,就记录一下。 问题: 大概就是一个字符串:&quot;11-12,11-21,11-22,11-24&quot;,需要处理成&quot;11-12至11-21,11-22至11-24&quot;,即两个日期为一组,用“至”连接,然后每组日期用逗号隔开。 于是乎,折腾一番后, 思路是: 1、先按逗号拆分...
将一个或多个字符替换成另一种字符
import java.util.regex.Matcher; import java.util.regex.Pattern; /**  * 将一个或多个空格替换成,  *  * 如:"我爱          五星红旗"  *  * 转:"我爱,五星红旗"  */ public class ReadTxtUtils{  public static void main(Str
PHP 字符串正则替换函数preg_replace
$msg = preg_replace("/.+/is", "", $msg); -----删除和中间的部分 $msg = preg_replace("/]+>/", "", $msg); -----是删除i (PCRE_CASELESS) 如果设定此修正符,模式中的字符将同时匹配大小写字母。 s (PCRE_DOTALL) 如果设定了此修正符,模式中的圆点元字符(.)匹配所有的字符,包括换行符。
正则表达式进行字符串替换!将奇数和偶数的字符串替换成不同的!并且忽略大小写查找
Pattern p = Pattern.compile("java", Pattern.CASE_INSENSITIVE); Matcher m = p.matcher("java Java JaVa IloveJAVA you hate jaVAadsladl"); StringBuffer buf = new StringBuffer(); int i = 0; while(m
字符串:正则表达式用于替换操作
/* *  2018年3月30日16:34:22 *  代码目的: *      演示正则表达式用于替换操作。 *      方法见名知义。 *      replaceFirst和replaceAll均为类Matcher的普通方法。 *      appendReplacement(StringBuffer sbuf, String replacement)执行渐进式的替换 。 *     ...
随手写的一个将string字符串内某字符替换成另外的字符的一个函数
string ChReplaceFun(string &amp;amp;amp;strValue, string strOriginal, string strReplace) { if (strValue.find(strOriginal) != -1) { while (strValue.find(strOriginal) != -1) { ...
正则表达式:字符串中连续重复字符串的识别和替换
今天编程的时候遇到一个正则表达式查找和替换的问题:对于字符串连续出现的字符,用“(重复字符)”替换。我想到用正则表达式比较高效。 对于字符串中的连续重复的字符,正则表达式是:(.)\1+以下是程序的片段: Pattern pattern = Pattern.compile("(.)\\1+"); Matcher matcher = pattern.matcher("111234445466");
将字符串中某个字符串替换为另外一个字符串
package mianshi; //将字符串中某个字符串更改为另外一个字符串 // &amp;quot;abcdef&amp;quot;将&amp;quot;bc&amp;quot;-&amp;amp;gt;&amp;quot;de&amp;quot; public class strChange { //方法1、自带函数解决 public String replace2(String s,String s1,String s2){ if(s.contains(s1)
excel中把一个字符串替换为另一个字符串
现在需要把B3单元格的字符串“张三”替换为F3单元格的“李四”,然后把结果显示在D3具体写法为:先找到待替换的目标字符串的位置,并确定待替换的目标字符串的长度之后用字符串替换即可...
Java 字符串 之 字符串替换
http://www.verejava.com/?id=16993026372386/** 4. 字符串的替换操作 1. String replace(char oldChar,char newChar) //将新字符替换旧字符 3. String replaceFirst(String regex,String replacement); //替换第一个满足条件的字符串 */ pub...
08:字符替换
原题链接 总时间限制: 1000ms 内存限制: 65536kB 描述 把一个字符串中特定的字符全部用给定的字符替换,得到一个新的字符串。 输入只有一行,由一个字符串和两个字符组成,中间用单个空格隔开。字符串是待替换的字符串,字符串长度小于等于30个字符,且不含空格等空白符; 接下来一个字符为需要被替换的特定字符; 接下来一个字符为用于替换的给定字符。 输出一
高效率保留首尾字符,中间全部变为星号
    因业务需求接口需要对返回银行卡保留首6位,尾4位,中间以星号代替。本着不重复造轮子原则,上网找了几种写法,测试后感觉写法效率不高,于是自己写了一遍,用字符数组按位替换。代码如下:/** * 对字符加星号处理:除前面几位和后面几位外,其他的字符以星号代替 * * @param content * 传入的字符串 * @param frontNum * ...
通过指针对字符串进行查询并且替换其中的指定字符
欢迎拍砖
js中把字符串第四个到第五个字符替换成#
js中把字符串第四个到第五个字符替换成 substring 方法 返回位于 String 对象中指定位置的子字符串。 strVariable.substring(start, end) “String Literal”.substring(start, end) 参数 start 指明子字符串的起始位置,该索引从 0 开始起算。 end 指明子字符串的结束位置,该索引从 0 ...
js根据字符将字符串分解成数组
var arr_id = new Array(); arr_id = strList.split(","); //根据字符将字符串分解成数组 function AnalyzeArr(str) { var arr_id = new Array(); arr_id = str.split(","); return arr_id }
UE 里面使用将某个字符或一串字符替换成回车换行符
例如将&符号,替换成回车换行符号,只需要使用^p就可以了
QString替换多个字符
QString替换多个字符:将时间中‘-’替换成‘/’ // 采用QRegExp正则表达式  QString str1 = "2017-06-20";      // 使用空格替换"/"  QString str2 = str1.replace(QRegExp("\\-"), "/");
js正则表达式替换特殊字符
excel表格复制粘贴到文本框,解析相应的数据 粘贴到文本框 解析相应的数据,换行符替换成“-”,空格替换成“,” var a = $('#data').val().replace(/[\r\n]/g,&quot;-&quot;); var b = a.replace(/\s+/g,&quot;,&quot;);  ...
将字符串中的字符替换成指定字符c
C 全部替换字符串里某个字符或者某个子串 /*将字符串中某个字符全部替换为另一个字符*/  #include  #include  #include  intsubstitude(char s1[],char A,char B)  {  int N,P=0;  N= strlen(s1);  for (int M = 0;M  {    s1[M] = B;     P=P+
php字符串函数(2)替换、分割、填充、去除
1、字符串替换函数:      (1)str_replace():
替换字符串中连续出现的指定字符串
本题来自《程序员代码面试指南》(左程云)著 题目:给定三个字符串str,from,to,已知from字符串中无重复字符,把str中所有的from字符串替换为to字符串,然后替换后的字符串。 举例:str="123abc",from="abc",to="456",return "123456"; import java.io.*; class test { public static v
将一个字符串的第一个空格替换掉其他的字符
字符串 statu = string [aa=aa, bb=bb, cc=cc] ,要将string [aa之间的空格替换成&amp;amp;&amp;amp; 实现方式: 1、先找到空格位置 int i = statu.indexOf(&quot; &quot;, 1); 2、再将string字符串转成 StringBuffer 字符串 StringBuffer buffer = new StringBuffer(sta...
用正则表达式re 替换多处字符串(re.sub)
pattern = re.compile('&quot;lead&quot;:&quot;(.*?)&quot;,') # 单引号中的字符串都是要替换掉的 html = re.sub(pattern, '', html) # 匹配所有符合的地方  
MySQL字符串替换
比如你要将 表 tb1里面的 f1字段的abc替换为def UPDATE tb1 SET f1=REPLACE(f1, 'abc', 'def'); REPLACE(str,from_str,to_str) 在字符串 str 中所有出现的字符串 from_str 均被 to_str替换,然后返回这个字符串: mysq...
正则表达式替换指定字符位置
记录在这里备忘 整理坐标数据 {"position":{"lng":100.092612914"lat":23.8878061038 临沧市-云南省 {"position":{"lng":100.229628399"lat":26.8753510895 丽江市-云南省 {"position":{"lng":99.1779956133"lat":25.1204891962 保山市-云南省 {"...
C#使用指定的字符替换除首尾字符外的字符
方法中也提供了一种由字符数组转换为字符串的方法。 /// /// 使用指定的字符替换除首尾字符外的字符串中的字符 /// /// 原字符串 /// 指定的字符 /// private static string ReplaceWithNewStr(string sourceString, char ch) { char[] tempChar = sourc
String有3个用于字符替换的方法总结
public class KongGe { public static void main(String[] args) { //我们知道String有3个用于字符替换的方法,分别是: //String replace(CharSequence target, CharSequence replacement):将字符串中出现的target替换成replacement; //String
Python中 如何将一个字符串分成一个个字符;
其实很简单,一开始我以为是用Str的属性split; 然而当你知道一个知识点之后,这个就不是问题了: 一个字符串本质上来讲是一个列表。 如此: 代码: for x in Str: print(x)
【golang】正则表达式 查找和替换字符
我拟理解的正则表达式 正则表示式即在一个字符串查找满足匹配规则的子字符串 1) 正则表达式的描述模式, 1.1。 连接操作 连接操作就是匹配连接后的结果 有 hello和 go 两个单词将它们连接起来,用正则表式为 (hello)(go),就是连接操作,连接操作必须满足这这几个要求才能匹配成功 匹配一个邮箱 (示例:abcabc@qq.com) 操作 1 2 3 4 5 拆分成 邮...
把一个字符串中特定的字符全部用给定的字符替换,得到一个新的字符串。
试题描述 把一个字符串中特定的字符全部用给定的字符替换,得到一个新的字符串。 输入格式 只有一行,由一个字符串和两个字符组成,中间用单个空格隔开。字符串是待替换的字符串,字符串长度小于等于30个字符,且不含空格等空白符;接下来一个字符为需要被替换的特定字符;接下来一个字符为用于替换的给定字符。 输出格式 一行,即替换后的字符串。 样例输入 hello-how-are-you o O
C# 字符串分割,包括分割多个字符
(1)如果字符串格式为 String str="abc#def#hijkl#mn"; string[] s = str.Split(new char[] { '#' }); string[] s = str.Split('#'); Eval("") + "#"+Eval("") 重点是split中的函数是字符型,不是字符串 结果就是 s[0]="abc"; s[1]="def"; s[
正则匹配 字符串 并替换
/** * 正则查找字符串中的,并将其结尾补充 * * @param inputString * @return */ public String fillImgEndTag(String inputString) throws PatternSyntaxException { String imgEndTag = "";
jquery替换字符串
  var str = &quot;2018-01-30T11:14:51.2&quot;                 str = str.replace('T', '  '); alert(str) 结果输出是:2018-01-30 11:14:51.2
将字符串中指定的字符替换成指定字符
/*******************************************************************************  函数名称 :ReplaceCharWithChar()*  摘    要 :将字符串中指定的字符替换成指定字符*  输入参数 :cpString:字符串;cSymbol:要替换的字符;cReplaceSymbol:替换的字符*  输出数
Python如何将字符串分割成单个字符,并形成一个list?
一个字符串可以看做是一个list 具体操作如下 &amp;gt;&amp;gt;&amp;gt; a = &quot;这是一段话&quot; &amp;gt;&amp;gt;&amp;gt; a[0] '这' &amp;gt;&amp;gt;&amp;gt; list(a) ['这', '是', '一', '段', '话'] &amp;gt;&amp;gt;&amp;gt; for x in a: print(x) 这 是 一 段 话 &amp;gt;&amp;gt;&amp;gt; 所以
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java 正则表达式学习 python3正则表达式教程