正则表达式 – 查找可选令牌之间的匹配?
发布时间:2020-12-14 06:01:52 所属栏目:百科 来源:网络整理
导读:对于字符串: text :: handle:e@ma.il :: text text :: chat_identifier:chat0123456789 text 我有当前的正则表达式: m /(handle:| chat_identifier:)(.?)(:{2} |)/ 我目前正在使用$2来获得我想要的值(在第一个字符串e@ma.il和第二个字符串,chat01234
对于字符串:
> text :: handle:e@ma.il :: text 我有当前的正则表达式: m /(handle:| chat_identifier:)(.?)(:{2} |&)/ 我目前正在使用$2来获得我想要的值(在第一个字符串e@ma.il和第二个字符串,chat0123456789). 有没有更好/更快/更简单的方法来解决这个问题呢? 解决方法
它是否“更好”取决于上下文,但您可以采用这种方法:将字符串拆分为“:”并获取结果列表的第四个元素.如果第三个字段可以是“handle”或“chat_identifier”以外的东西,那可以说比正则表达式更具可读性并且更强大.
我认为这两种方法的速度都非常相似,但几乎可以用于perl中的任何实现.我想表明速度对于这个步骤至关重要,然后再担心它… (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |