[解決済み] Python で \d+s+/↵を使おうとすると、うまくいかない。
2022-03-04 16:27:34
質問
テキストに数字、スペース、"/"、スペース、数字が入ったものを「数字の数字」に置き換えたいのですが、どの方法もうまくいきません。
import re
text = '6/6, 7 / 40, 7/ 6, 8 /97'
print(re.sub(r'\d+/\d+', ' number of number ', text)) # works
print(re.sub(r'\d+\s+/\d+', ' number of number ', text)) # works
print(re.sub(r'\d+/\d+\s+', ' number of number ', text)) # not works
print(re.sub(r'\d+\s+/\d+\s+', ' number of number ', text)) # not works
解決方法は?
末尾のホワイトスペースにマッチするパターンを
/
を変更し
+
の後の量詞は
\s
から
*
を使用することができます。
import re
text = '6/6, 7 / 40, 7/ 6, 8 /97'
print(re.sub(r'\d+\s*/\s*\d+', ' number of number ', text))
パターンの詳細
-
\d+
- 1桁以上 -
\s*/\s*
- a/
0個以上の空白で囲まれた -
\d+
- 1桁以上の数字
ノート
: Python 3.x では
re
の場合、速記文字クラスは Unicode を意識しています。ASCII 桁のみにマッチするように
[0-9]
の場合、この文字クラスを使うか、あるいは
re.ASCII
フラグを使用します(これは
\s
が、)。
re.sub(r'\d+\s*/\s*\d+', ' number of number ', text, flags=re.ASCII)
関連
-
pythonを使ったオフィス自動化コード例
-
[解決済み] UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 20: ordinal not in range(128)
-
[解決済み] 単語を含まない行にマッチする正規表現
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] XHTMLの自己完結型タグを除くオープンタグにマッチするRegEx
-
[解決済み] 億の相対的輸入
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
python string splicing.join()とsplitting.split()の説明
-
Python Decorator 練習問題
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】RuntimeWarning: invalid value encountered in double_scalars で numpy の除算ができない。
-
[解決済み】ImportError: sklearn.cross_validation という名前のモジュールがない。
-
[解決済み】TypeErrorの修正方法。Unicodeオブジェクトは、ハッシュ化する前にエンコードする必要がある?
-
[解決済み】csv.Error:イテレータはバイトではなく文字列を返すべき
-
[解決済み】 AttributeError("'str' object has no attribute 'read'")
-
[解決済み】Python Error: "ValueError: need more than 1 value to unpack" (バリューエラー:解凍に1つ以上の値が必要です
-
[解決済み】Python - "ValueError: not enough values to unpack (expected 2, got 1)" の修正方法 [閉店].