目標
Pythonで_の前に\をつける文字列置換を行いたいです.ただし,すでに\_となっている部分はそのままにしたいと思っております.
例えば,"aaa_aa\_aa"を"aaa\_aa\_aa"とすることが目標です.
行ったこと
[^\\]
の部分で\が含まれていないという条件をつけたつもりです.
Python
1import re 2f_ = re.sub("[^\\]_", "\\_","aaa_aa\_aa")
発生している問題・エラーメッセージ
Python
1File ~\AppData\Local\Programs\Python\Python39\lib\re.py:304, in _compile(pattern, flags) 2 302 if not sre_compile.isstring(pattern): 3 303 raise TypeError("first argument must be string or compiled pattern") 4--> 304 p = sre_compile.compile(pattern, flags) 5... 6 550 source.tell() - here) 7 551 if this == "]" and set: 8 552 break 9 10error: unterminated character set at position 0
あまりにも原因が分からなかったため,自分では何もできていないというのが正直なところです.
環境はPython3.9.6です.
よろしくお願いいたします.

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。