Java 正在从文件中拆分字符串
我要从文件中加载一个字符串:Java 正在从文件中拆分字符串,java,regex,string,Java,Regex,String,我要从文件中加载一个字符串: JC 10D 6S 7S 7C 9H 8C KC 2H 为此,我使用scanner的scan.next(),这样每次只能得到一个表达式 如何将这些表达式拆分为字符串 例如,JC分为“J”和“C” 我试着做charAt(),但我意识到将10D拆分为“10”和“D”可能会有问题,因为我只是从文件中读取它。 我是否应该尝试使用String.split()?但是,我不知道如何使用正则表达式,所以实现必须简单。 谢谢 它实际上是卡片的数据。10D代表10钻石,JC杰克俱乐部
JC 10D 6S 7S 7C 9H 8C KC 2H
为此,我使用scanner的scan.next()
,这样每次只能得到一个表达式
如何将这些表达式拆分为字符串
例如,JC分为“J”和“C”
我试着做charAt(),但我意识到将10D拆分为“10”和“D”可能会有问题,因为我只是从文件中读取它。
我是否应该尝试使用String.split()?但是,我不知道如何使用正则表达式,所以实现必须简单。
谢谢
它实际上是卡片的数据。10D代表10钻石,JC杰克俱乐部 因为您知道您将得到两个部分,所以可以通过两次调用os方法来完成:
- 第一个调用为初始
字母生成一个子字符串length()-1
- 第二个调用为最后一个字母生成子字符串
它实际上是卡片的数据。10D代表10钻石,JC杰克俱乐部 因为您知道您将得到两个部分,所以可以通过两次调用os方法来完成:
- 第一个调用为初始
字母生成一个子字符串length()-1
- 第二个调用为最后一个字母生成子字符串
使用Regex可以执行以下操作:
String s = "JC";
Pattern p = Pattern.compile("\\d+");
Matcher m = p.matcher(s);
if(m.find()) {
System.out.println("Rank :"+m.group());
System.out.println("Suit :"+s.substring(m.end()));
} else {
System.out.println("Rank :"+s.substring(0,1));
System.out.println("Suit :"+s.substring(1));
}
使用Regex可以执行以下操作:
String s = "JC";
Pattern p = Pattern.compile("\\d+");
Matcher m = p.matcher(s);
if(m.find()) {
System.out.println("Rank :"+m.group());
System.out.println("Suit :"+s.substring(m.end()));
} else {
System.out.println("Rank :"+s.substring(0,1));
System.out.println("Suit :"+s.substring(1));
}
是什么标准让你把
“10D”
分成{“10”,“D”}
,而不是{“1”,“0”,“D”}
这实际上是卡的数据。10D意味着10钻石,JC杰克俱乐部。是什么标准让你把“10D”
分成{“10”,“D”}
,而不是{“1”,“0”,“D”}
这实际上是卡的数据。10D代表10钻石,JC杰克俱乐部。这太棒了!谢谢:)太棒了!谢谢:)