我准备了一个简单的代码片段,以便将错误的部分与我的Web应用程序分开.
public class Main {
public static void main(String[] args) throws IOException {
System.out.print("\nEnter a string:->");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String temp = br.readLine();
String words[] = temp.split(".");
for (int i = 0; i < words.length; i++) {
System.out.println(words[i] + "\n");
}
}
}
Run Code Online (Sandbox Code Playgroud)
我在构建Web应用程序JSF时测试了它.我只是想知道为什么在上面的代码temp.split(".")中不起作用.该声明,
System.out.println(words[i]+"\n");
Run Code Online (Sandbox Code Playgroud)
在控制台上不显示任何内容意味着它不会通过循环.当我将temp.split()方法的参数更改为其他字符时,它像往常一样正常工作.可能是什么问题?
在Java中,我试图分裂^角色,但它无法识别它.转义\^抛出代码错误.
这是一个特殊的角色还是我需要做一些其他事情来让它识别出来?
String splitChr = "^";
String[] fmgStrng = aryToSplit.split(splitChr);
Run Code Online (Sandbox Code Playgroud) 我有Java字符串:
String b = "/feedback/com.school.edu.domain.feedback.Review$0/feedbackId");
Run Code Online (Sandbox Code Playgroud)
我也生成了我希望匹配此字符串的模式:
String pattern = "/feedback/com.school.edu.domain.feedback.Review$0(.)*";
Run Code Online (Sandbox Code Playgroud)
当我说它b.matches(pattern)回来false.现在我知道美元符号是Java RegEx的一部分,但我不知道我的模式应该是什么样子.我假设$ in pattern需要被一些转义字符替换,但不知道有多少.这个$符号对我很重要,因为它有助于我区分列表中的元素(美元后的数字),我不能没有它.