文字列が空かどうかを取得するには (isEmpty) 2017/04/24
文字列の長さが0かどうかを判定する方法の、プログラミング言語別のメモ。
if (str.isEmpty()) {
System.out.println("Empty!");
}
if (str.isEmpty) {
println("Empty!");
}
if (strlen($str) === 0) {
echo "Empty!\n");
}
if not str:
print("Empty!")
if str.empty?
puts("Empty!")
end
if ($str eq '') {
print("Empty!\n");
}
if [ -z "$STR" ]; then
echo "Empty!"
fi
Java / Scala 2014/10/06
Javaでの例
if (str.isEmpty()) {
...;
}
Scalaでの例
if (str.isEmpty) {
...;
}
Signature:
boolean java.lang.String#isEmpty()
java.lang.String#isEmpty
| Java Platform SE 8 Javadoc
http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#isEmpty–
PHP 2017/04/24
例
if (strlen($str) === 0) {
...;
}
または
if (empty($str)) {
...;
}
empty
関数は空文字列 ""
だけでなく "0"
に対しても empty という判定をしてしまう問題がある。
empty
関数に変数でないもの(リテラルや関数の返り値など)を渡すと、PHP5.4以前だと以下のようにエラーになってしまう。
var_export(empty(""));
// PHP Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING
function f() {
return "";
}
var_export(empty(f()));
// PHP Fatal error: Can't use function return value in write context
empty
関数は配列にも使える。
Python 2013/10/19
if not str:
...
条件式の中に文字列を入れると空文字列だけが False
の扱いになるためこの書き方ができる。
-> 論理値への変換
Ruby / JRuby 2014/12/12
例
if str.empty?
...
end
Perl 2013/10/25
例
if ($str eq '') {
...;
}
sh (シェルスクリプト) 2014/05/16
例
if [ -z "$STR" ]; then
...
fi
-> シェルスクリプトの演算子