前提
pythonを使用しています。
プログラミング自体初心者ですが、よろしくお願いします。
実現したいこと
文字列中の、括弧内の記号 ”," を ":" に置換したいです。
文字列中に現れる記号は , - = ( ) の5種類で、
()内に表示される記号は , のみです。
数値は0~99の範囲で表示されます。
文字列例 moji = "11(1,0,2)(2,2)(3,13)6-7=8" moji = "0-1-1=2(22,2)-(1,1,1,1)2" 実現された例 "11(1:0:2)(2:2)(3:13)6-7=8" "0-1-1=2(22:2)-(1:1:1:1)2"
試したこと
色々調べた結果、以下の正規表現を利用した方法を試しました。
しかし、()内の文字列を全て置換する方法しか分からず、
()内、かつ、記号のみを限定するまでには至りませんでした。
python
1re.sub(r'(?<=\().+?(?=\))',':',moji) 2↓ 3'11(:)(:)(:)6-7=8' 4'0-1-1=2(:)-(:)2'
正規表現にて試しましたが、無理な場合は正規表現にはこだわらないです。
補足情報(FW/ツールのバージョンなど)
python 3.9.7
回答2件
あなたの回答
tips
プレビュー