【发布时间】:2016-02-08 12:45:56
【问题描述】:
我正在使用正则表达式和在字符串开头切割马来编码字符。我遇到了不同的实现:
String Str = new String(".,,¨B<?xml version='1.0' encoding='UTF-8'?>
str.replaceFirst("(.*)<?xml","<?xml");
str.trim().replaceFirst("(.*)<?xml","<?xml")
输出保持不变。这里有什么区别,应该使用哪一个?
【问题讨论】:
-
为什么我提出一个合法的问题会遭到反对?
-
可能是因为搜索 trim 的作用需要两秒钟。
-
如果您将鼠标悬停在拒绝投票按钮上,文本显示为“此问题未显示任何研究工作”。你的问题没有。你可以用谷歌搜索该代码中的所有方法并找出自己。
-
@Matsemann 我不会这么快做出判断。虽然谷歌搜索会告诉他
trim()做了什么,但 OO 编程的新手可能不理解像methodA().methodB()这样的顺序方法调用,并且可能认为这是第三种不同的方法,独立于methodA()或methodB()。 --- 阅读他的问题:“replaceFirst()和trim().replaceFirst()之间的区别” --- 这不是 “replaceFirst()和trim()之间的区别”跨度> -
@TheLima 我没有说原因是好的(我没有投反对票),只是解释了人们为什么这样做
标签: java regex string str-replace