pyhtonの文字列操作
まとめ(python vs JavaScript)
・型変換 似ているね
パイソン
int(), str()
JavaScript
Number(), String()
※以下は順番に パイソン、JavaScript
・変換は同じで、replaceでいきましょ!
・長さは、len()関数、length(プロパティか?)
・空白削除は、strip, trimではなくreplaceがよさげ(trimはブラウザ未対応あり)
・部分文字列は、スライスでいこう。書き方がちがうよ
・文字列検索は、find, indexOf ( Ofの最初は大文字だよ,
無い場合は、-1をどちらも返却しますよ )
※型判定 type()関数, typeof 変数名
長さ取得みたい〜
■長さは、len
>>> a="koba "
>>> a
'koba '
>>>
>>> len(a)
5
■部分文字列はスライスでやるよ
・開始インデックス:終了インデックスを指定します
>>> a
'koba '
>>> a[1:3]
'ob'
・先頭から2文字
>>> a
'koba ' ※わかりやすくスペースを全角にしました
>>> a[:2]
'ko'
・お尻から2文字
>>> a[-2:]
'a ' ※わかりやすくスペースを全角にしました
■検索(find)
>>> a="kobayashi yamada"
>>> a
'kobayashi yamada'
>>> a.find("koba")
0
>>> a.find("y")
4
>>> a.find("yo")
-1
>>> a.find("yamada")
10
>>> a.find("yama")
10
>>> a.find("yamada2")
-1
■置換(replace)
>>> a
'koba '
>>> a.replace("k","K")
'Koba '
■空白削除(タブ文字、改行(\r,\n))
>>> a
'koba '
>>> b= a.strip()
>>> b
'koba'
■データ型の判定
>>> intData = 12
>>> strData = "34"
>>> type( intData)
<type 'int'>
>>> type( strData )
<type 'str'>
>>> str( intData )
'12'
>>> int( strData )
34
>>>
最後に文字列結合は
プラス記号で結合できますよ
※パイソン、JavaScriptでは、ダブル、シングルクォートどちらも同じ扱いらしい
(エスケープ処理に違いがない)
JavaScriptもついでに解説
■長さ(プロパティなのか?)
var str = 'hello';
console.log( str.length );
> 5
■部分文字列(slice)
スライスでいくと、パイソンと同じ感じになりますね〜
var value = 'koba';
data = value.slice( 0,2 );
console.log( data );
data = value.slice( -2 );
console.log( data );
data = value.slice( 1,3 );
console.log( data );
> "ko"
> "ba"
> "ob"
■検索 (indexOf)
var value = 'koba yama';
data = value.indexOf("ba ");
console.log( data );
data = value.indexOf("y");
console.log( data );
data = value.indexOf("yama2");
console.log( data );
> 2
> 5
> -1
■置換(replace)
var value = 'koba ';
data = value.replace("k", "K");
console.log( data );
> "Koba "
■スペースを取り除く
trimがあるが、ブラウザ未対応があるので、以下を参考に
var value = 'koba';
data = value.replace(/^\s+|\s+$/g,''); (※正規表現でこのままで利用)
console.log( data );
> "koba"
■型変換
var value = 123
data = String(value);
console.log( typeof data );
console.log( data );
var value = '123';
data = Number(value);
console.log( typeof data );
console.log( data );
> "string"
> "123"
> "number"
> 123
※データ型の判定は、 typeof
おまけのパイソン
■文字列の繰り返し
>>> print "*" * 50
**************************************************
>>> a="koba "
>>> print a*3
koba koba koba
※デバックで画面表示に使えるかもね