我有很多字符串:
...somedata... value1='555', value2='666', ...somedata...
...somedata... value1='333', value2='333', ...somedata...
...somedata... value1='123', value2='456', ...somedata...
有没有办法匹配value1
和value2
中具有相同值的字符串?
例如value1='x'
value2='y'
,其中x == y
。
答案 0 :(得分:2)
所以你要做的就是匹配values
。就正则表达式而言,我们称之为pattern
。我有一个可以扩展的粗略解决方案。
正则表达式: .*value1=\'(\d*)\'.*value2=\'\1\'.*
<强>解释强>
value1
并期望value2
相同pattern
的 Regex101 Demo 强>
答案 1 :(得分:0)
我认为你想要的是
value1='([0-9]*)', value2='\1'
我认为您可能希望阅读capture groups并在其中一位在线正则表达式测试人员like this one
上试用它们编辑: 顺便说一句,如果你还没有计划这样做,你可能会想要在上面的正则表达式的末尾使用/ g修饰符,以便它返回匹配该模式的所有结果而不仅仅是第一个。
答案 2 :(得分:0)
使用 awk
在不知道输入数据的情况下不确定要使用哪个正则表达式,但输出命令将是
if $leftNum == $rightNum print $whateverUwant