python如何提取字串中的數字

2021-10-14 04:20:41 字數 922 閱讀 1087

1、使用正規表示式,用法如下:

## ^ 匹配字串的開始。

## $ 匹配字串的結尾。

## \b 匹配乙個單詞的邊界。

## \d 匹配任意數字。

## \d 匹配任意非數字字元。

## x? 匹配乙個可選的 x 字元 (換言之,它匹配 1 次或者 0 次 x 字元)。

## x* 匹配0次或者多次 x 字元。

## x+ 匹配1次或者多次 x 字元。

## x 匹配 x 字元,至少 n 次,至多 m 次。

## (a|b|c) 要麼匹配 a,要麼匹配 b,要麼匹配 c。

## (x) 一般情況下表示乙個記憶組 (remembered group)。你可以利用 re.search 函式返回物件的 groups() 函式獲取它的值。

## 正規表示式中的點號通常意味著 「匹配任意單字元」

2、解題思路:

既然是提取數字,那麼數字的形式一般是:整數,小數,整數加小數;

所以一般是形如:—-.—–;

根據上述正規表示式的含義,可寫出如下的表示式:」\d+.?\d*」;

·\d+ 匹配1次或者多次數字,注意這裡不要寫成*,因為即便是小數,小數點之前也得有乙個數字;

·.? 這個是匹配小數點的,可能有,也可能沒有;

·\d* 這個是匹配小數點之後的數字的,所以是0個或者多個。

3、**如下:

# -*- coding: cp936 -*-

import re

string=

"a1.45,b5,6.45,8.82"

print re.findall(r"\d+\.?\d*"

,string)

# ['1.45', '5', '6.45', '8.82']

python如何提取字串?

在python中,要提取文字的字串,有多中方法,如使用正規表示式,beautifulsoup或xpath等來提取。下面講解用正規表示式來提取字串。一 單個位置的字串提取 這種情況我們可以使用 這個正規表示式來提取。舉例,乙個字串 a123b 如果我們想提取ab之間的值123,可以使用findall配...

python提取字串中數字

題目 這是乙個複雜問題的簡化 如下是乙個字串列表,提取字串中第二個數字,並判斷是否大於1000,如果是,從列表中刪除這一行。1000 t1002 n 省略 coding utf 8 oldstr 1000 t1002 n newstr oldstr 匹配目標數字左側字串 t newstr.index...

提取 字串中 數字

include include include void main l if find break 有數字則退出迴圈 else printf 沒有數字 請重新輸入 n gets c 沒有則重新出入 l strlen c l strlen c printf 字串長度為 d n l for i 0 i ...