我正试图用Java中的扫描器将一个字符串分成另外两个字符串。好像不起作用。我只能通过谷歌找到扫描仪用来读取控制台输入的例子。我从扫描仪的手册中找出了我做事情的方式,我不确定我错了什么。
String elem = "hello.there";
Scanner s = new Scanner(elem);
s.useDelimiter(".");
String first = s.next();
String second = s.next();
第一个和第二个是空白的,我不知道为什么。
您需要设置句点(.
):
s.useDelimiter("\\.");
然后使用next()
,它返回下一个完整的标记,因为hasnext()
返回一个boolean
表示,如果扫描器在其输入中有另一个标记:
String first = s.next();
String second = s.next();
问题内容: 我想为扫描器指定一个分隔符,该分隔符可以按某种模式进行拆分,但不会从令牌中删除该模式。我似乎无法完成这项工作,因为正则表达式所标识的所有内容也会作为分隔符的一部分被占用。有什么建议? 我的具体问题是,我的文件看起来像: 我想从文本/数字混合+行中分离出来,直到下一个文本/数字混合。我有正则表达式来标识它们,但是如上所述,因为定界符占用了我想要的内容,所以使用了它。 编辑:代码添加: 是
简单地说,我目前正在使用的程序要求我分割扫描仪输入(例如:2火腿和奶酪5.5)。它应该读取一份杂货订单,并将其分成三个数组。我应该使用string.split,并能够将此输入拆分为三部分,而不考虑中间字符串中的空格。 示例输入#1:2苹果0.9 示例输出#1: 2个 苹果 0.9 示例输入#2:2更多苹果0.9 示例输出#2: 2个 更多的苹果 0.9 我如何实现这一点?每当我用string.sp
我创建了一个简单的扫描器,用于计算中的字符串数。txt文件。每个字符串位于下一行。它算错了,每次它给我数字297,甚至有超过20000个字符串。这个txt文件是由我编写的另一个程序创建的,它从网站获取链接,并使用FileWriter和BufferedWriter将其保存到。txt文件。可能有什么问题? 编辑:字符串示例:
任何人都可以帮我解决这个问题。我接受三个输入:整数、双精度和字符串,但Scanner类不接受字符串值
问题内容: 我的Java作业有问题。我遇到了意外的异常,特别是: java.util.NoSuchElementException:找不到行 我正在使用,该程序不断读取任何内容,并重复“无效格式”异常文本。如果输入正确的值,则第一部分通过,然后该部分立即进入此异常。如果输入的值不正确,则它将开始循环异常。 这是我的代码: 问题答案: 您关闭了多个库,这些库关闭了底层库,因此另一个库将不再从同一库和
问题内容: 使用Scanner类中的useDelimiter时遇到一些问题。 如果我有这个输入 美国广播公司 输出将是 AB 然后等到我键入另一个“-”以打印出最后一个字符 但是,如果我没有用户输入数据,而是将字符串插入到Scanner中,则代码将起作用。原因是什么?如何解决?我不想使用StringTokenzier 问题答案: 如果没有等待您输入另一个,则将错误地假定您已完成输入。 我的意思是,