Regexを使って1つのステートメントを抽出して別のステートメントに変換する最良の方法は何ですか? 、変換用正規表現
今AB-123-CDにAB123CDをこれが実装されている:
具体的には、次のように私が見つけ、テキストのブロックからsudent番号を抽出し、それを変換するには、以下の実施しています3文として、次のように:
gg['student_num'] = gg['student_test'].str.extract('(\d{2})\w{3}\d{2}') + \
'-' + gg['student_num'].str.extract('\d{2}(\w{3})\d{2}') + \
'-' + gg['student_test'].str.extract('\d{2}\w{3}(\d{2})')
それは私が3つの文持っている必要があると私には右感じていない - 各グループの 1を - (これはもっと複雑だった場合でも、より多くのまたは)一緒に下に連結され、それがあるかどうか疑問に思ったいくつかのテキストを見つけて変換するより良い方法でしたか?あなたがこの方法正規表現を使用したセグメントのリストを取得し、それらを結合することができ
をstr.replace(R'(\ {2} W)(\ D {3})(\ w {2}) '、r' \ 1- \ 2- \ 3 ') 'となります。さて、データがどの列にあるのかは不明ですが、 'replace'を試してみてください。 –