在字符串中查找换行符“\ n”

时间:2014-02-10 05:30:28

标签: java regex string maze

[摘要:我需要一种从大量字符串中删除换行符号(\ n)的方法,希望没有正则表达式]

对于我的CS课程,我们必须从文本文件中读取迷宫,看起来像这样:

##############################
#@...........................#
##############################
##############################
##############################
##############################
##############################
##############################
##############################
##############################
------------------------------
##############################
##############################
#@...........................#
##############################
##############################
##############################
##############################
##############################
##############################
##############################
------------------------------
##############################
##############################
##############################
#@...........................#
##############################
##############################
##############################
##############################
##############################
##############################
------------------------------

虚线表示单独的楼层。它是一个3D迷宫。

这只是阅读迷宫的一个测试,因此这些碎片无关紧要。我们必须使用Scanner类将整个迷宫读成单个字符串,但是我们必须能够测试每个个体(x,y,z)并返回该点存在的字符。我的想法是将巨大的字符串分成三维的字符数组(char [] [] []),但这需要从巨大的迷宫字符串中删除换行符。有没有办法可以从大量的字符串中删除\ n令牌,希望不使用正则表达式。我经常环顾四周,但找不到可靠的答案。很多人建议使用正则表达式,但我不太熟悉这样做,并希望尽可能避免使用它。感谢你的帮助。

3 个答案:

答案 0 :(得分:3)

使用替换:

String input="###...##";
String output=input.replace("\n","");

答案 1 :(得分:0)

如果您将行读作String s,则可以使用trim()方法:

String line = "...\n".trim();
  

public String trim():返回字符串的副本,省略前导和尾随空格。

答案 2 :(得分:0)

Java会将新行字符识别为单个字符,即“\ n”是单个字符。所以我想如果你使用扫描仪来读取每个字符,那么你可以包含一个 if 条件,这样每当检测到新的行字符时,它都会忽略它。 类似的东西:

if(character!="\n")
{
    //your code to keep the character into the array
}