Regex 正则表达式来匹配字符串中某个位置的相等字
我有一些字符串:Regex 正则表达式来匹配字符串中某个位置的相等字,regex,Regex,我有一些字符串: ...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我想你想要的
...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
我想你想要的是
value1='([0-9]*)', value2='\1'
我想你可能会想读一读关于regex的文章,然后在一个在线的regex测试仪上试用
编辑:
顺便说一句,如果您还没有计划这样做,您可能会希望在上述正则表达式末尾使用/g修饰符,以便它返回与该模式匹配的所有结果,而不仅仅是第一个结果。使用awk 在不知道输入数据的情况下,不确定要使用哪个regexp,但输出命令
if $leftNum == $rightNum print $whateverUwant
因此,您要做的是匹配两个
值。就正则表达式而言,我们称之为模式
。我有一个粗略的解决方案,可以扩展
Regex:*value1=\'(\d*)\'.*value2=\'\1\'.
说明:
- 我在这里做的是捕获
value1
并期望value2
是相同的模式
是的,可能有。我猜测是通过捕获第一个值并使用捕获组匹配第二个值。我想你应该指定更多的信息。你为什么要这样做?为什么它保存为字符串?显示正确的代码是的,当然,我可以在正则表达式之外比较结果。只是想知道是否有一种方法可以在内部完成。@Shri,我不认为这里有什么可以补充的。我希望这个问题对其他人有所帮助,因为他们无法控制生成这些字符串的过程。▲ 回答这个问题。我从来没有想过比较正则表达式中的数值。是的,没错!非常感谢你!我在这里遗漏了一些东西。:)