首先:I know this question has been beaten to death.
第二:我看过每一种资源(在线编辑,RexEgg,regular-expressions.info等......)我可以想到过去几年,我仍然无法掌握这部分正则表达式。无论我使用何种RegEx,它似乎都不适用于我。
现在家务管理不在了:
我需要大量的文本来提取一些数据,我认为Regex非常适合。
文字如下:
2017-03-31 09:41:18 EDT [12708-4]参数:$ 1 ='0',$ 2 ='ON',$ 3 ='ON'
显然,我想要$1
,$2
和$3
的值。这个特殊的例子有3个变量,但通常在1到15之间。
我想要一个能够捕获以下内容的正则表达式:
这是我的正则表达式,与第一组匹配:
\d{4}.+\[[\d-]*\].+?parameters:\s((\$\d+)\s?=\s?(['\d+\w+]+))
但是没有加号,括号和逗号的组合产生任何我想要的东西。即使我从字符串中删除逗号并将它们卡在一起我也无法捕获它。
这家伙抓住了一切,但这些团体没有意义:
\d{4}.+\[[\d-]*\].+?parameters:\s(((\$\d+)\s?=\s?(['\d+\w+]+),?\s?)+)
有人可以在这里结束我的痛苦并向我解释如果文本被我不关心的字符分隔,如何在正则表达式中捕获重复的文本?