我想检索有人以字符串形式输入的内容。我假设我需要在if语句中设置一个布尔值并对其做一些事情,但我不确定如何。
当用户输入混合了单词和数字的字符串时,所有字符串都用一个空格分隔:
hey 110 say "I am not very good at Java" but " I can fish pretty well"
我想确定什么是单词,什么是数字以及引号内的内容 我在报价部分遇到问题
我希望能够取"I am not very good at Java"
和"I can fish pretty well"
并打印出引号内的内容,但字符串中可以有多个引号。
我无法使用
以下是我现在的情况。这就是我在这个方法中尝试识别字符串中的某些东西是单词,数字还是引用:
class Bean {
int num;
String word;
String quote;
String userInput;
public Bean(String userInput)//
{
num=0;// initializing used variables and fields
this.userInput=userInput;
}
public void set(String userInput)// method set returns void
{
num=0;// reset each variable so new input can be passed
String empty="";
String wordBuilder="";
userInput+=" ";
String quoteBuilder="";
boolean quote=false;
for(int index=0; index<userInput.length(); index++)// goes through each character in string
{
if(Character.isDigit(userInput.charAt(index)))// checks if character in the string is a digit
{
empty+=userInput.charAt(index);
}
else {
if (Character.isLetter(userInput.charAt(index))) {
wordBuilder += userInput.charAt(index);
} else {
if (userInput.charAt(index) == '"') {
quote = true;
}
if (quote = true) {
quoteBuilder += userInput.charAt(index);
}
}
}
//if it is then parse that character into an integer and assign it to num
num = Integer.parseInt(empty);
word = wordBuilder;
empty = "";
wordBuilder = "";
}
}
}