質問編集履歴
3
誤字修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -98,7 +98,7 @@
|
|
98
98
|
|
99
99
|
以下のように一度raw文字列に直すことで"\"から始まるエスケープシーケンスを検出できました。
|
100
100
|
|
101
|
-
raw文字列に直した際、各単語は「''」で囲まれ
|
101
|
+
raw文字列に直した際、各単語は「''」で囲まれていたので、「'\」から始まる単語を排除するように書いています。
|
102
102
|
|
103
103
|
```python
|
104
104
|
|
2
ベストアンサー決定後、試行錯誤により問題が解決したので方法と結果を追記しました
test
CHANGED
File without changes
|
test
CHANGED
@@ -89,3 +89,55 @@
|
|
89
89
|
なぜこのコードは正しく機能しないのでしょうか?
|
90
90
|
|
91
91
|
また、どうすれば「¥」から始まる文字列を指定できるでしょうか?
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
---
|
96
|
+
|
97
|
+
### 追記
|
98
|
+
|
99
|
+
以下のように一度raw文字列に直すことで"\"から始まるエスケープシーケンスを検出できました。
|
100
|
+
|
101
|
+
raw文字列に直した際、各単語は「''」で囲まれるていたので、「'\」から始まる単語を排除するように書いています。
|
102
|
+
|
103
|
+
```python
|
104
|
+
|
105
|
+
# 分かち書きにする
|
106
|
+
|
107
|
+
tmp= t.tokenize(corpus, wakati = True)
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
print(tmp)
|
112
|
+
|
113
|
+
|
114
|
+
|
115
|
+
print('='*50)
|
116
|
+
|
117
|
+
|
118
|
+
|
119
|
+
#エスケープシーケンスを削除する
|
120
|
+
|
121
|
+
word_list = []
|
122
|
+
|
123
|
+
for word in tmp:
|
124
|
+
|
125
|
+
if not repr(word).startswith('\'\'):
|
126
|
+
|
127
|
+
word_list.append(word)
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
print(word_list)
|
132
|
+
|
133
|
+
```
|
134
|
+
|
135
|
+
```output
|
136
|
+
|
137
|
+
['私', '達', 'は', '、', 'エンジニア', 'が', '抱える', '問題', 'の', '解決', 'を', '全力', 'で', 'サポート', 'し', 'ます', '。', '\n', '質問', '・', '回答', 'によって', ' ', '生まれ', 'た', 'コンテンツ', 'を', '、', '同じ', '問題', 'を', '持っ', 'た', '人', 'に', '最適', 'な', '形', 'で', '届け', 'ます', '。', '\n\n', 'プログラミング', 'に関して', '、', 'わから', 'ない', 'こと', 'が', 'あれ', 'ば', '是非', 'teratail', 'で', '質問', 'し', 'て', 'ください', '。', '\n', 'あなた', 'が', 'わかる', 'こと', 'が', 'あれ', 'ば', '、', '是非', '解決', '方法', 'を', 'シェア', 'し', 'て', '解決', 'の', '手助け', 'を', 'し', 'て', 'ください', '。', '\n\n', 'あなた', 'の', '全て', 'の', '行動', 'が', '、', 'いつか', '多く', 'の', '日本', 'の', 'エンジニア', 'の', '為', 'に', 'なり', 'ます', '。']
|
138
|
+
|
139
|
+
==================================================
|
140
|
+
|
141
|
+
['私', '達', 'は', '、', 'エンジニア', 'が', '抱える', '問題', 'の', '解決', 'を', '全力', 'で', 'サポート', 'し', 'ます', '。', '質問', '・', '回答', 'によって', ' ', '生まれ', 'た', 'コンテンツ', 'を', '、', '同じ', '問題', 'を', '持っ', 'た', '人', 'に', '最適', 'な', '形', 'で', '届け', 'ます', '。', 'プログラミング', 'に関して', '、', 'わから', 'ない', 'こと', 'が', 'あれ', 'ば', '是非', 'teratail', 'で', '質問', 'し', 'て', 'ください', '。', 'あなた', 'が', 'わかる', 'こと', 'が', 'あれ', 'ば', '、', '是非', '解決', '方法', 'を', 'シェア', 'し', 'て', '解決', 'の', '手助け', 'を', 'し', 'て', 'ください', '。', 'あなた', 'の', '全て', 'の', '行動', 'が', '、', 'いつか', '多く', 'の', '日本', 'の', 'エンジニア', 'の', '為', 'に', 'なり', 'ます', '。']
|
142
|
+
|
143
|
+
```
|
1
私の環境と、実際にエスケープシーケンスを削除したい文章(例文)、実行結果を追記しました
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,4 +1,24 @@
|
|
1
|
-
python3で文章から、エスケープ文字「\」から始まるエスケープシーケンス(改行\nなど)をすべて削除しようと思い、以下のように実行しました。
|
1
|
+
python3で以下の文章から、エスケープ文字「\」から始まるエスケープシーケンス(改行\nなど)をすべて削除しようと思い、以下のように実行しました。
|
2
|
+
|
3
|
+
(anaconda3のjupyter notebookを使っています)
|
4
|
+
|
5
|
+
```corpus
|
6
|
+
|
7
|
+
私達は、エンジニアが抱える問題の解決を全力でサポートします。
|
8
|
+
|
9
|
+
質問・回答によって 生まれたコンテンツを、同じ問題を持った人に最適な形で届けます。
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
プログラミングに関して、わからないことがあれば是非teratailで質問してください。
|
14
|
+
|
15
|
+
あなたがわかることがあれば、是非解決方法をシェアして解決の手助けをしてください。
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
あなたの全ての行動が、いつか多くの日本のエンジニアの為になります。
|
20
|
+
|
21
|
+
```
|
2
22
|
|
3
23
|
```python
|
4
24
|
|
@@ -34,9 +54,17 @@
|
|
34
54
|
|
35
55
|
|
36
56
|
|
37
|
-
|
57
|
+
print(tmp)
|
38
58
|
|
59
|
+
|
60
|
+
|
61
|
+
print('='*50)
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
# 空白を消す
|
66
|
+
|
39
|
-
word_list = [word for word in tmp if (word.startswith('\'))]
|
67
|
+
word_list = [word for word in tmp if not (word.startswith('\'))]
|
40
68
|
|
41
69
|
|
42
70
|
|
@@ -44,9 +72,19 @@
|
|
44
72
|
|
45
73
|
```
|
46
74
|
|
75
|
+
```output
|
76
|
+
|
77
|
+
['私', '達', 'は', '、', 'エンジニア', 'が', '抱える', '問題', 'の', '解決', 'を', '全力', 'で', 'サポート', 'し', 'ます', '。', '\n', '質問', '・', '回答', 'によって', ' ', '生まれ', 'た', 'コンテンツ', 'を', '、', '同じ', '問題', 'を', '持っ', 'た', '人', 'に', '最適', 'な', '形', 'で', '届け', 'ます', '。', '\n\n', 'プログラミング', 'に関して', '、', 'わから', 'ない', 'こと', 'が', 'あれ', 'ば', '是非', 'teratail', 'で', '質問', 'し', 'て', 'ください', '。', '\n', 'あなた', 'が', 'わかる', 'こと', 'が', 'あれ', 'ば', '、', '是非', '解決', '方法', 'を', 'シェア', 'し', 'て', '解決', 'の', '手助け', 'を', 'し', 'て', 'ください', '。', '\n\n', 'あなた', 'の', '全て', 'の', '行動', 'が', '、', 'いつか', '多く', 'の', '日本', 'の', 'エンジニア', 'の', '為', 'に', 'なり', 'ます', '。']
|
78
|
+
|
79
|
+
==================================================
|
80
|
+
|
81
|
+
['私', '達', 'は', '、', 'エンジニア', 'が', '抱える', '問題', 'の', '解決', 'を', '全力', 'で', 'サポート', 'し', 'ます', '。', '\n', '質問', '・', '回答', 'によって', ' ', '生まれ', 'た', 'コンテンツ', 'を', '、', '同じ', '問題', 'を', '持っ', 'た', '人', 'に', '最適', 'な', '形', 'で', '届け', 'ます', '。', '\n\n', 'プログラミング', 'に関して', '、', 'わから', 'ない', 'こと', 'が', 'あれ', 'ば', '是非', 'teratail', 'で', '質問', 'し', 'て', 'ください', '。', '\n', 'あなた', 'が', 'わかる', 'こと', 'が', 'あれ', 'ば', '、', '是非', '解決', '方法', 'を', 'シェア', 'し', 'て', '解決', 'の', '手助け', 'を', 'し', 'て', 'ください', '。', '\n\n', 'あなた', 'の', '全て', 'の', '行動', 'が', '、', 'いつか', '多く', 'の', '日本', 'の', 'エンジニア', 'の', '為', 'に', 'なり', 'ます', '。']
|
82
|
+
|
83
|
+
```
|
47
84
|
|
48
85
|
|
86
|
+
|
49
|
-
|
87
|
+
出力からわかるように、リスト中の'\n'や'\n\n'などが削除されることを期待していましたが、削除はされていませんでした。
|
50
88
|
|
51
89
|
なぜこのコードは正しく機能しないのでしょうか?
|
52
90
|
|