回答編集履歴
1
別解を示す。
answer
CHANGED
@@ -8,4 +8,20 @@
|
|
8
8
|
|
9
9
|
# スペースの後に[が存在しないなら補う
|
10
10
|
a2 = re.sub(' (?![)' , '[', a1)
|
11
|
+
```
|
12
|
+
|
13
|
+
追記
|
14
|
+
質問文の補足説明を見て、もう一度考えてみました。
|
15
|
+
下記#1では、"数字または角開き括弧に続かない数字"の前に角開き括弧を置きます。
|
16
|
+
下記#2では、"数字に続くカンマ"を角閉じ括弧に置換します。
|
17
|
+
|
18
|
+
```python
|
19
|
+
import re
|
20
|
+
for a in ["[12, 34, 56]", "[12,34, 56]", "[7]", "a = 'aaa, bbb[12, 13, 14]. ccc.'"]:
|
21
|
+
a1=re.sub('(?<![[\d])(?=\d+)', '[', a) #1
|
22
|
+
a2=re.sub('(?<=\d),' , ']', a1) #2
|
23
|
+
print(a)
|
24
|
+
print(a1)
|
25
|
+
print(a2)
|
26
|
+
print('')
|
11
27
|
```
|