"aaaa bbbb dddd ffff ".replace("\\t\\t", "\\tx\\t");
我想在两个连续标签之间插入' x' 。
我认为我的Java Regex模式错了。 有人能告诉我哪里错了?
输出应为:
"aaaa bbbb x dddd x ffff x "
答案 0 :(得分:3)
示例字符串不包含任何制表符。它们只是空间。在Java中,选项卡由字符串中的\t
表示。
System.out.println("aaaa\tbbbb\t\tdddd\t\tffff\t\t".replace("\t\t", "\tx\t"));
输出:
aaaa bbbb x dddd x ffff x
通常,标签包含四个空格。你可以查看空格。
答案 1 :(得分:3)
s = s.replaceAll("\t(?=\t)", "\tx");
它需要一个replace
不是正则表达式(replaceAll / replaceFirst),因为对于三个选项卡,它已经跳过两个选项卡,因此没有两个' s。
以上是展望未来。
两个反斜杠用于正则表达式转义,以表示反斜杠本身。字符串文字中的单个反斜杠转义,\u0061
(小写字母' a')可以放在任何地方,如public cl
\ u0061 ss C
。