首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有特殊字符和文本的Regex表达式

带有特殊字符和文本的Regex表达式
EN

Stack Overflow用户
提问于 2020-06-05 16:14:39
回答 1查看 36关注 0票数 1

给予:

代码语言:javascript
复制
str_var ='host="dsa.asd.dsc"port="1234"service_nameORdbName="dsa"pass="dsa"user="ewq"'

例如,在主机的情况下,如何匹配可以有abc.dfg.ewq.asd等的搅拌?数据只能包含“”。特别的角色。

我得到的表达式只能与文本匹配,因为w+。

代码语言:javascript
复制
    result = re.findall('(\w+)="(\w+)"', str_var)

预期结果:

代码语言:javascript
复制
[('host':'dsa.asd.dsc'), ('port', '1234'), ('service_nameORdbName', 'dsa'), ('pass', 'dsa'), ('user', 'ewq')]
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-05 16:21:48

您可以将.添加到\w

代码语言:javascript
复制
result = re.findall('(\w+)="([\w.]+)"', str_var)

或者,将.分隔的单词与\w+(?:\.\w+)*匹配(一个或多个单词字符后面跟着0或多个圆点重复,然后是一个或多个单词字符):

代码语言:javascript
复制
result = re.findall('(\w+)="(\w+(?:\.\w+)*)"', str_var)

或者,在双引号之间匹配值,这些双引号中可能包含除双引号以外的任何内容( "[^"]*""匹配,然后除双引号外为零或多个字符,然后为"):

代码语言:javascript
复制
result = re.findall('(\w+)="([^"]+)"', str_var))

Python演示

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62219770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档