文字列から単語形式の数字を抽出しようとしています。例えば、入力文字列のようなものかもしれません:この入力から単語形式で大きな数字を見つけるための正規表現
"What is 3 million 6 hundred 5 divided by 5 hundred?"
、私はグループとして2つの数値を取得する方法を見つけ出すしたいと思います。
["3 million 6 hundred 5", "5 hundred"]
注:他の入力文字列にはさらに多くの数字がある可能性があります。
正規表現はこの問題を解決する正しいルートだと思います。
["hundred", "thousand", "million", "billion", ...]
はこれまでのところ、これは私が持っているものです::
scales= ["hundred", "thousand", "million", "billion"]
scale_pattern = '|'.join(scales)
regex = re.compile('\b(d+' + scale_pattern + 'd+)+\b')
私は私のパターンは、どのような私のためにpsudeocodeかなり右ではありません知っている理想的には私のようなスケールのリストを渡すことができ「のつもりです:
for any number of the following occurrences:
find the pattern [int word_from_list optional_int]
うわー、多くの票がこの質問を閉じるために早く来ています。私はそれを改善するために何ができるかに関するフィードバック? – Gunther
これまでに試したことを示してください。 – ArieKanarie
ありがとうございます。私はこれまでのことでそれを更新します。 – Gunther