hereの回答のおかげで、次の方法で、特定の文字列を特定のフィールドの値の部分文字列として含むすべての行を取得できました。
r.db('my_db').table('my_table').filter(lambda row: row['some_key'].match(".\*some_given_string.\*"))
同様の結果を得たいが、今度は「some_key」が単一の文字列ではなく文字列のリストである場合はどうすればよいでしょうか? 次のテーブルについて言います。
[{"name": "row1", "some_key": ["str1", "str2"]}, {"name": "row2", "some_key": ["str3", "blah"]}, {"name": "row3", "some_key": ["blah", "blahblah"]}]
最初の 2 行を探して".*tr.*"
取得したいのは、最後の行の「some_key」の下に、どの文字列にも「tr」が含まれていないリストがあるためです。
どうすればrethinkdbでそれを行うことができますか?