簡體   English   中英

如何使用正則表達式刪除只有“11.x”模式的字符串?

[英]How to use regex to remove string with only '11.x' pattern in it?

我有一個值列表,

lst = ['python 3.x', 'java', 'pandas', '12.1.x/11.x', '7.x/8.x']

我想用空字符串替換最后兩個值['12.1.x/11.x', '7.x/8.x']

如何使用正則表達式將它們替換為跨相似模式泛化的空字符串?

pattern = re.sub('\d+\.x\/\d+\.x', '', lst[3]) # this is not working

您需要確保使用錨點並指定第二個版本號是可選的:

^(?:\d+\.)+(?:x|\d+)(?:/(?:\d+\.)+(?:x|\d+))?$

https://regex101.com/r/c0CDr5/1

我不知道如何使用 Python 正確應用此功能,因此請查看上面鏈接中的代碼生成器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM