回答編集履歴
3
テキスト修正
answer
CHANGED
@@ -50,4 +50,4 @@
|
|
50
50
|
- 文脈自由文法
|
51
51
|
- プッシュダウンオートマトン
|
52
52
|
|
53
|
-
といった概念が関わってくるものと思います。従って、何らかの文脈自由文法によって生成される文字列をパースするというテーマで検索すれば、参考になるコードがみつかる
|
53
|
+
といった概念が(根本的なところでは)関わってくるものと思います。従って、何らかの文脈自由文法によって生成される文字列をパースするというテーマで検索すれば、参考になるコードがみつかるかもしれません。
|
2
テキスト修正
answer
CHANGED
@@ -45,7 +45,7 @@
|
|
45
45
|
|
46
46
|
> なんと検索すれば良いかもよくわからず、
|
47
47
|
|
48
|
-
とのことですが、 `aa(bb(dd)cc(ee))ff` のような、開くカッコと閉じるカッコがきちんと対応して出現するという規則に沿った文字列のパーサーを(私の回答のよう
|
48
|
+
とのことですが、 `aa(bb(dd)cc(ee))ff` のような、開くカッコと閉じるカッコがきちんと対応して出現するという規則に沿った文字列のパーサーを(私の回答コードのような既存モジュールの力を借りずに)自作するということになると、理屈としては
|
49
49
|
|
50
50
|
- 文脈自由文法
|
51
51
|
- プッシュダウンオートマトン
|
1
テキスト修正
answer
CHANGED
@@ -29,11 +29,25 @@
|
|
29
29
|
|
30
30
|
dic = json.loads(json_str)
|
31
31
|
|
32
|
-
print(dic) # =>
|
32
|
+
print(dic) # => {'bb': 'dd', 'cc': 'ee'}, 'ff': None}
|
33
33
|
|
34
34
|
```
|
35
35
|
- **動作確認用Repl.it:** [https://repl.it/@jun68ykt/Q234191](https://repl.it/@jun68ykt/Q234191)
|
36
36
|
|
37
37
|
関数 `to_json_str` の本体は修正あるいはリファクタの余地があるかもしれませんが、JSONを経由するという考え方を提示することがこの回答の主旨になります。
|
38
38
|
|
39
|
-
参考になれば幸いです。
|
39
|
+
参考になれば幸いです。
|
40
|
+
|
41
|
+
|
42
|
+
### 補足
|
43
|
+
|
44
|
+
以下、参考までに補足します。
|
45
|
+
|
46
|
+
> なんと検索すれば良いかもよくわからず、
|
47
|
+
|
48
|
+
とのことですが、 `aa(bb(dd)cc(ee))ff` のような、開くカッコと閉じるカッコがきちんと対応して出現するという規則に沿った文字列のパーサーを(私の回答のように、既存モジュールの力を借りずに)自作するということになると、理屈としては
|
49
|
+
|
50
|
+
- 文脈自由文法
|
51
|
+
- プッシュダウンオートマトン
|
52
|
+
|
53
|
+
といった概念が関わってくるものと思います。従って、何らかの文脈自由文法によって生成される文字列をパースするというテーマで検索すれば、参考になるコードがみつかると思います。
|