正規表現を使わない文字列比較・置換 まとめ

Rubyなどの言語が構文として正規表現を扱えるためか、しばしばPython正規表現は扱いにくいと言われることがあります。しかし逆にPythonを使っている側からすれば、他の言語では必要のないケースで正規表現を使い過ぎるようにも見えます。
次のようなパターンマッチ・文字列置換では正規表現は必要ありませんので、うまく使い分けるようにしてください。

固定文字列を含むかどうか

## TrueかFalseを返す
'/cgi-bin/' in url

## 位置も調べたい場合
## 0以上の整数(インデックス)または-1(見つからない場合)が返される
url.find('/cgi-bin/')
url.rfind('/cgi-bin/')

固定文字列で始まるか/終わるか

s.startswith('http://')
s.endswith('.txt')

固定文字列/空白文字による分割

s.split(',')

前後の空白文字の除去

s.strip()
s.rstrip()

固定文字列の置換

s.replace(str1, str2)

文字の置換

s.translate({ord1:str1, ord2:str2, ...})