判断字符串是否为二进制数字,可通过以下方法实现:
一、定义与判断标准
二进制特征 二进制字符串仅包含字符`0`和`1`,且通常以`0b`或`B`开头(如`0b1010`或`B1010`)。
通用方法
- 逐字符检查: 遍历字符串,若发现非`0`或`1`字符,则不是二进制。 - 正则表达式
二、编程实现示例
Java实现 ```java
public boolean isBinary(String s) {
return s.matches("*");
}
```
或逐字符检查:
```java
public boolean isBinary(String s) {
for (char c : s.toCharArray()) {
if (c != '0' && c != '1') {
return false;
}
}
return true;
}
```
PHP实现
- 直接转换法(需先转十六进制):
```php
function isBinary($s) {
return bin2hex($s) === $s; // 检查是否全为十六进制字符
}
```
- 逐字符检查:
```php
function isBinary($s) {
return preg_match('/^*$/', $s);
}
```
Perl实现
```perl
if ($s =~ /[^01]/) {
print "不是二进制数n";
return 1;
}
```
三、注意事项
前缀标识: 部分语言(如Python)使用`0b`前缀,需注意区分。 扩展字符
通过上述方法,可准确判断字符串是否为二进制数字。