使用正则表达式提取<tag>..... </tag>范国内的数字 e.g.s:一个字串" <htmL>this is head <tog>this is a Lovely day for 2230238212, end. </tag> </html> ”输出: 2230238212 :param s: :return: int
时间: 2023-11-27 17:55:38 浏览: 80
使用正则表达式取出数据
可以使用Python中re模块中的正则表达式来提取数字。具体实现如下:
```python
import re
def extract_number(s):
pattern = r'<tag>.*?(\d+).*?</tag>'
match = re.search(pattern, s)
if match:
return int(match.group(1))
else:
return None
```
解释:
- `r'<tag>.*?(\d+).*?</tag>'` 是用来匹配包含数字的 `<tag>` 和 `</tag>` 标签的正则表达式。
- `.*?` 表示非贪婪匹配,即匹配最小长度的字符串。
- `(\d+)` 表示匹配数字,并且使用括号将数字部分分组。
- `match.group(1)` 返回第一个括号中匹配到的内容,即数字部分。
- 如果没有找到数字,则返回 `None`。
使用示例:
```python
s = "<htmL>this is head <tog>this is a Lovely day for 2230238212, end. </tag> </html>"
result = extract_number(s)
print(result) # 输出 2230238212
```
阅读全文