回答編集履歴
3
些細な修正
test
CHANGED
@@ -22,7 +22,7 @@
|
|
22
22
|
|
23
23
|
|
24
24
|
|
25
|
-
これだとマッチする文字列は「100」となり、そこから末尾の1文字が
|
25
|
+
これだとマッチする文字列は「100」となり、そこから上記のスライスで末尾の1文字が捨てられて「10」になります。
|
26
26
|
|
27
27
|
|
28
28
|
|
2
追記
test
CHANGED
@@ -23,3 +23,15 @@
|
|
23
23
|
|
24
24
|
|
25
25
|
これだとマッチする文字列は「100」となり、そこから末尾の1文字がスライスで捨てられて「10」になります。
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
> en = re.search(r'\d+', '売買単位/100円')
|
30
|
+
|
31
|
+
> 上記のコードでも100と出力されると思いますが、下記のコードとの違いは何なのでしょうか。
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
さあ、それはコードを書いた人の意図なので他人にはわかりませんね。
|
36
|
+
|
37
|
+
ただ、このコードでは数字の直後に「円」が無い場合でもマッチすることになるので、検索条件としては異なることになりますね。
|
1
追記
test
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
> .group()[0:-1]
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
group()はマッチした文字列を返します。
|
6
|
+
|
7
|
+
つまり「100円」という文字列になります。
|
8
|
+
|
9
|
+
|
10
|
+
|
1
11
|
> [0:-1]
|
2
12
|
|
3
13
|
|
@@ -5,3 +15,11 @@
|
|
5
15
|
これをスライスと言って、ここでは文字列の最初の文字から最後の文字の1つ前までを切り出します。
|
6
16
|
|
7
17
|
つまり最後の文字「円」が捨てられるわけです。
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
> \d+
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
これだとマッチする文字列は「100」となり、そこから末尾の1文字がスライスで捨てられて「10」になります。
|