我有一個字串,我只能從那個字串中獲取數字。
url = "www.mylocalurl.com/edit/1987"
現在從那個字串,我只需要得到1987。我一直在嘗試這種方法,
id = [int(i) for i in url.split() if i.isdigit()]
但我[]只得到串列。
uj5u.com熱心網友回復:
您可以使用正則運算式并在串列中單獨獲取數字。
import re
url = "www.mylocalurl.com/edit/1987"
digit = re.findall(r'\d ', url)
輸出:
['1987']
uj5u.com熱心網友回復:
用空白替換所有非數字(有效地“洗掉”它們):
import re
num = re.sub('\D', '', url)
見現場演示。
uj5u.com熱心網友回復:
您什么也得不到,因為默認情況下,該.split()方法會在有空格的地方拆分句子。由于您正在嘗試拆分沒有空格的超鏈接,因此它不會拆分任何內容。您可以做的是使用正則運算式進行捕獲。例如:
import re
url = "www.mylocalurl.com/edit/1987"
regex = r'(\d )'
numbers = re.search(regex, url)
captured = numbers.groups()[0]
如果你不知道什么是正則運算式,代碼基本上是在說。使用regex定義為的字串,r'(\d )'這基本上意味著search通過 url 捕獲任何數字。然后在captured我們有第一個捕獲的組是1987。
如果您不想使用它,那么您可以使用您的.split()方法,但這次提供使用/作為分隔符的拆分。例如`url.split('/')。
希望這可以幫助!
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/454443.html
標籤:python-3.x 细绳 硒网络驱动程序
下一篇:OSError:[Errno8]Execformaterror:'/home/ec2-user/Desktop/chromedriver'在AWSEC2ARM風味機器中使用Chro
