如何计算Java中@、#、+等符号的数量

我正在尝试编写一个代码来计算一个String. 但我不知道如何计算符号。

java中有这样的功能吗?


慕运维8079593
浏览 135回答 3
3回答

动漫人物

这在很大程度上取决于您对术语symbol的定义。一个直接的解决方案可能是这样的Set<Character> SYMBOLS = Set.of('@', ' ', ....for (int i=0; i < someString.length(); i++} {&nbsp; if (SYMBOLS.contains(someString.charAt(i)) {&nbsp;这会迭代 chars someString,并检查每个 char 是否可以在该预定义的 SYMBOLS 集中找到它。或者,您可以使用正则表达式来定义“符号”,或者,您可以依赖各种现有定义。当您检查 regex Pattern language for java 时,您可以找到\w&nbsp; A word character: [a-zA-Z_0-9]\W&nbsp; A non-word character: [^\w]例如。以及已经表示这组或那组字符的各种其他快捷方式。

慕斯王

请发布您到目前为止尝试过的内容如果您需要单个字符的计数 - 您最好迭代字符串并使用映射来跟踪字符及其计数或者如果总计数就足够了,您可以使用正则表达式,如下所示while&nbsp;(matcher.find()&nbsp;)&nbsp;{count++}

慕尼黑8549860

一种方法是遍历字符串并将每个字符与其 ASCII 值进行比较String str = "abcd!@#";&nbsp; &nbsp; &nbsp; &nbsp; for(int i=0;i<str.length();i++)&nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(33==str.charAt(i))&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.println("Found !");&nbsp; &nbsp; &nbsp; &nbsp; }在此处查找 ASCII 值https://www.cs.cmu.edu/~pattis/15-1XX/common/handouts/ascii.html
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java