Previous: gcd 最大公約数 Up: mcal Next: heron 三角形の面積 MCMD2
MCMD2 : mcal : hasspace 空白類文字検索

4.46 hasspace 空白類文字検索

書式1: hasspace($str$, 長さ)

書式2: hasspacew($str$, 長さ)

文字列$str$に空白類文字列が含まれていれば真を、含まれていなければ偽を返す。 空白類文字とは、ASCIIコードの0x20および0x09〜0x0dまでの事をいう。 それぞれ、半角スペース(0x20)、水平tab(0x09)、改行(0x0a)、垂直タブ(0x0b)、改ページ(0x0c)、復帰(0x0d)である。 マルチバイト文字における空白類文字を検索したければhasspacewを使うこと。

利用例

例1: 基本例

str項目に空白類文字列が含まれていれば真を返す。 id=1の行は半角スペース文字が含まれ、 id=2の行はtab文字が含まれ、 そしてid=4の行は改行文字が含まれているために真となっている。 ここで、id=3の行は全角スペースのため、検知できていない。

$ more dat1.csv
id,str
1,a b
2,ab	c
3,ab c
4,
5,"aa
bb"
$ mcal c='hasspace($s{str})' a=rsl i=dat1.csv o=rsl1.csv
#END# kgcal a=rsl c=hasspace($s{str}) i=dat1.csv o=rsl1.csv
$ more rsl1.csv
id,str,rsl
1,a b,1
2,ab	c,1
3,ab c,0
4,,0
5,"aa
bb",1

例2: マルチバイト文字

hasspacew関数を使えば全角スペースも正しく検知できる。

$ mcal c='hasspacew($s{str})' a=rsl i=dat1.csv o=rsl2.csv
#END# kgcal a=rsl c=hasspacew($s{str}) i=dat1.csv o=rsl2.csv
$ more rsl2.csv
id,str,rsl
1,a b,1
2,ab	c,1
3,ab c,1
4,,0
5,"aa
bb",1
Previous: gcd 最大公約数 Up: mcal Next: heron 三角形の面積 MCMD2