文章的显示时,只有一断文字的开头的空格需要替换,每个空格替换为 ,而文字中间的空格不替换。
下面是一位正则大师提供的解决方案,拿出来和大家共享。
String str = " 酷 流行";
System.out.println(str.replaceAll("(?m)(?<=^ *) ", " "));
替换结果 酷 流行
解释:
?m 匹配多行
?<= 代表后面字符的前面必须出现的条件
^ * 代表必须是开头,且有任意个空格
最后的空格就没啥说的了。
最终的解释就是,
一行的开头,前面有人一个空格的空格被替换为