英文:
Check for letter(s) in array with numbers
问题
以下是已翻译的内容:
在尝试找出一种在数组中检查字母的方法时陷入了一段时间。数组中包含了像这样的1和0:
`[0000000000001000000000000, 0000000000010100000000000, 0000000000100010000000000, 0000000001000001000000000, 0000000010000000100000000, 0000000100000000010000000]`
使用for循环来扫描数组中的可能字母,我该如何检查字母?
for (int j = 0; j < lineCount; j++) {
if (array[j].matches("^a-zA-Z+$")) {
System.out.println("找到了非数字字符");
System.exit(1);
}
}
英文:
Been stuck awhile trying to figure out a way to check for letters inside an array. In the array are 1s and 0s like so
[0000000000001000000000000, 0000000000010100000000000, 0000000000100010000000000, 0000000001000001000000000, 0000000010000000100000000, 0000000100000000010000000]
Using a for loop to scan for possible letters in the array how can I check for letters?
for (int j = 0; j < lineCount; j++) {
if (array[j].matches("^a-zA-Z+$")) {
System.out.println("Not a number found");
System.exit(1);
}
答案1
得分: 0
假设这些都是由0和1组成的字符串,为什么不直接执行以下操作:
[10]*
匹配任意个数的0或1。!
取反布尔结果
if(!array[j].matches("[10]*")) {
System.out.println("找到非数字");
System.exit(1);
}
对于任意数字字符串,你可以执行:
.*[a-zA-Z].*
如果字符串中存在任意一个字母则返回真。
if (array[j].matches(".*[a-zA-Z].*")) {//检查是否有字母
System.out.println("找到非数字");
System.exit(1);
}
英文:
Assuming that these are strings of 0's and 1's why not just do
[10]*
match any 0 or more binary digits.- the
!
negates the boolean result
if(!array[j].matches("[10]*")) {
System.out.println("Not a number found");
System.exit(1);
}
For any string of digits you could do:
.*[a-zA-Z].*
returns true if one letter exists anywhere in the<br>
string.
if (array[j].matches(".*[a-zA-Z].*")) {//check for a letter
System.out.println("Not a number found");
System.exit(1);
}
</details>
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论