python - IP 捕获或主机名的正则表达式
问题描述
我正在尝试为IP
捕获或创建一个正则表达式hostname
,然后忽略任何内容#
数据
192.168.0.41 #obs
SRVNET #obs
192.168.0.4 #obs
正则表达式
^(([1]?[0-9]{1,2}|2([0-4][0-9]|5[0-5])).){3}([1]?[0-9]{1,2}|2([0-4][0-9]|5[0-5]|[a-z]))$
解决方案
在您要匹配的注释的模式的第一部分,[^#]+
它是一个否定字符类,也将匹配一个空格。
由于您不想匹配空格,您可以添加\s
它以不匹配空格字符。
整场比赛都包含在第 1 组中,但由于这是唯一一场比赛,您可能会将其设为非捕获(?:
请注意,您必须转义点以匹配它的字面意思,这[1]
与 1 相同。
^(?:[^#\s]+)|^((1?[0-9]{1,2}|2([0-4][0-9]|5[0-5]))\.){3}(1?[0-9]{1,2}|2([0-4][0-9]|5[0-5]))$
^^ ^^ ^^
推荐阅读
- java - 某些设备未获得 READ_PHONE_STATE 权限,例如;红米、OPPO
- angular - 在角度组件库中包含外部包
- php - 十六进制格式的PHP字符串奇怪的结果
- tcp - 为什么我收到缩小窗口的 tcp 段?
- umbraco - 尝试添加新页面时未显示 Umbraco 内容模板
- lerna - 为什么 lerna 在引导时运行“预发布”?
- python - '不支持多类多输出'错误在 Scikit 学习 Knn 分类器
- javascript - 单选按钮验证在角度 7 中不起作用
- interface - 如何从界面设置状态?
- android - 删除反应原生 webview 上的 android 默认错误页面