`
Franciswmf
  • 浏览: 800342 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

String.replace()方法、注意转义

 
阅读更多
replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是:
1)replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串);
2)replaceAll的参数是regex,即基于规则表达式的替换,比如,可以通过replaceAll("\\d", "*")把一个字符串所有的数字字符都换成星号;
相同点是都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串,如果只想替换第一次出现的,可以使用
replaceFirst(),这个方法也是基于规则表达式的替换,但与replaceAll()不同的时,只替换第一次出现的字符串;
另外,如果replaceAll()和replaceFirst()所用的参数据不是基于规则表达式的,则与replace()替换字符串的效果是一样的,即这两者也支持字符串的操作;
还有一点注意:执行了替换操作后,源字符串的内容是没有发生改变的.
举例如下:
String src = new String("ab43a2c43d");
System.out.println(src.replace("3","f"));=>ab4f2c4fd.
System.out.println(src.replace('3','f'));=>ab4f2c4fd.
System.out.println(src.replaceAll("\\d","f"));=>abffafcffd.
System.out.println(src.replaceAll("a","f"));=>fb43fc23d.
System.out.println(src.replaceFirst("\\d,"f"));=>abf32c43d
System.out.println(src.replaceFirst("4","h"));=>abh32c43d.
如何将字符串中的"\"替换成"\\":
String msgIn;
String msgOut;
msgOut=msgIn.replaceAll("\\\\","\\\\\\\\");
原因:
'\'在java中是一个转义字符,所以需要用两个代表一个。例如System.out.println( "\\" ) ;只打印出一个"\"。但是'\'也是正则表达式中的转义字符(replaceAll 的参数就是正则表达式),需要用两个代表一个。所以:\\\\被java转换成\\,\\又被正则表达式转换成\。
将字符串中的'/'替换成'\'的几种方式:
msgOut= msgIn.replaceAll("/", "\\\\");
msgOut= msgIn.replace("/", "\\");
msgOut= msgIn.replace('/', '\\');


【需要转义的地方】
1、英文句号
String str="2.9.1";
String[] arr=str.split("\\.");//"."需要转义
System.out.println(arr.length);//3

分享到:
评论

相关推荐

    replace-string:替换字符串中的所有子字符串匹配项

    通过将字符串放入带有全局标志的RegExp构造函数中并将其传递给String#replace() ,可以实现类似的效果,但是无论如何,您首先必须转义该字符串。 使用, 现在有了一个方法,因此该程序包部分没有意义。 但是,它...

    C#字符串.HTML编码处理方式

    Htmlstring = Regex.Replace(Htmlstring, @"<(.[^>]*)>", "", RegexOptions.IgnoreCase); // 去除空行 Htmlstring = Regex.Replace(Htmlstring, @"([\r\n])[\s]+", "", RegexOptions.IgnoreCase); // 去除注释...

    去掉Html页中的标签代码

    // 转义特殊字符 Htmlstring = Regex.Replace(Htmlstring, @"&(quot|#34);", "\"", RegexOptions.IgnoreCase); Htmlstring = Regex.Replace(Htmlstring, @"&(amp|#38);", "&", RegexOptions.IgnoreCase); ...

    JavaScript实现格式化字符串函数String.format

    为了解决这个问题,本文提出了一种封装方法,通过创建一个名为String.js的自定义模块,来实现一个具有format方法的String原型。该方法使用正则表达式来查找和替换字符串中的占位符,从而实现格式化功能。具体步骤...

    javascript 取Url参数和去掉字符串前后空格方法

    String.prototype.trim)`检查浏览器是否已经支持`trim`方法,如果不存在,则添加自定义实现,以确保跨浏览器兼容性。 #### 总结 通过以上两种方法,我们可以有效地处理Web开发中常见的获取URL参数和清理字符串的...

    正则表达式清除html标签

    Htmlstring = Regex.Replace(Htmlstring, @"<(.[^>]*)>", "", RegexOptions.IgnoreCase); ``` - 这条规则匹配并删除所有的一般HTML标签。 - `.<[^>]` 指的是除了 `>` 外的任意字符。 3. **去除空白行**: ```...

    使用DataTable.Select 方法时,特殊字符的转义方法分享

    在这个例子中,原始条件字符串`"Name = 'John Doe's Brother'"`经过`Replace`方法处理后,单引号被正确转义,`Select`方法可以安全地执行。 总结起来,正确处理特殊字符转义对于使用`DataTable.Select`方法进行条件...

    Lua 基础教程(十)字符串.pdf

    3. **string.gsub(mainString, findString, replaceString)**:返回用`replaceString`替换`findString`而得到的新字符串。 ```lua string = "Lua Tutorial" newstring = string.gsub(string, "Tutorial", ...

    常用javascript案例大全

    JavaScript 是一种广泛应用于 Web 开发中的脚本语言,下面是常用的 JavaScript 案例大全,包括原生 JavaScript 实现字符串长度截取、获取域名主机、清除空格、替换全部、转义 HTML 标签、还原 HTML 标签、时间日期...

    JavaScript 中的replace方法说明

    stringObject.replace(searchvalue, replacevalue) ``` - **参数说明**: - `searchvalue`:要搜索的部分,可以是一个普通的字符串或一个正则表达式。 - `replacevalue`:用来替换`searchvalue`的新子字符串或...

    从日志等中修复糟糕的JSON字符串_TypeScript_JavaScript_下载.zip

    但请注意,这种方法并不能处理所有类型的错误,对于更复杂的格式问题,可能需要更高级的解析库或自定义解析逻辑。 修复破损JSON字符串是一个挑战,因为它涉及到对JSON语法的深入理解和灵活处理。在实际项目中,预防...

    JavaScript代码大全

    该方法首先创建了一个全局匹配的正则表达式对象 `raRegExp`,然后使用 `replace` 方法替换所有匹配项。 ### 4. 字符串修剪:`trim` `trim` 是一个自定义的字符串方法,用于移除字符串两端的空白字符。 #### 实现...

    转义表单提交字符处理函数

    - `string`:要转义的字符串。 - `flags`:可选参数,用于指定要转换的特殊字符集。默认情况下,转换 `, `>`, `&`, `"`. - `encoding`:指定字符串的编码,默认为内部编码。 - **示例**:`echo htmlspecialchars...

    java使用mysql的escape遇到的坑.pdf

    - 在Java代码中,我们通常会使用`String`类的`replace()`方法来预处理字符串,将特殊字符转换为转义形式。如`string1.replace("%", "\\%").replace("/", "\\/").replace("\\", "\\\\")`。但是,这里存在一个陷阱。...

    asp.net 去除HTML的标签的一个方法

    var result = regex.Replace(source, string.Empty); return result; } ``` #### 四、使用示例 假设我们有一个用户输入的文本框,需要在服务器端对用户的输入进行处理,去除其中可能存在的HTML标签后,再显示在...

    golang json.Marshal 特殊html字符被转义的解决方法

    在得到转义后的JSON字符串后,可以使用strings.Replace函数将转义字符替换为原字符: ```go content := strings.Replace(content, "\\u003c", ", -1) content = strings.Replace(content, "\\u003e", ">", -1) ...

    JS的replace方法

    `replace()`方法的工作原理是,在`stringObject`中寻找与`regexp`匹配的子串,一旦找到,就用`replacement`进行替换。如果`regexp`带有全局标志`g`,那么所有匹配的子串都会被替换;否则,只替换第一个匹配的子串。 ...

    JS函数库的使用

    这比原生的`replace`方法更加灵活和强大。 ##### 3. 清除空格 ```javascript String.prototype.trim = function() { var reExtraSpace = /^\s*(.*?)\s+$/; return this.replace(reExtraSpace, "$1"); }; ``` 这...

    proposal-string-replaceall:ECMAScript建议

    String.prototype.replaceAll建议 地位 冠军:Mathias Bynens(Google,@ mathiasbynens)。 该提案处于第4阶段,计划包含在ES2021中。 ... 这种方法的缺点是要求转义特殊的RegExp字符-请注意转义

Global site tag (gtag.js) - Google Analytics