在 PHP 中使用 RegEx 比较两个字符串的分组差异
所以我有两个字符串,我想比较并返回差异。我认为我不能使用简单的 preg_match() 因为它返回所有差异的数组。
我在解释自己时遇到了一些麻烦,但我希望下面的示例可以澄清它:
所以我希望
String 1: AA **B** AA
String 2: AA **DA** AA
返回类似于:
String2: 2 ==> DA
基本上我正在尝试检查 B< 位置之间的关系String1 中的 /strong> 和 String 2 中的 DA
任何类型的指示将不胜感激,谢谢!
So I have two strings, and I want to compare and return the differences. I don't think I can use a simple preg_match() since it returns an array of all differences.
I'm having a little trouble explaining myself but I hope the following example clears it up:
So I have
String 1: AA **B** AA
String 2: AA **DA** AA
I want the return to be something similar to:
String2: 2 ==> DA
Basically I'm trying to examine the relationship between the position of B in String1 and DA in String 2
Any kind of direction would be really appreciated, Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
事实上,正则表达式不会为你做这件事。您可以在 http://en.wikipedia 上了解
diff
的工作原理。 org/wiki/Diff#Algorithm (这就是你想要的)。您可以创建一个函数或类,使用这些算法执行简单的差异。--编辑1
Matt Ball 的好观点:突出显示 PHP 中两个字符串之间的差异
Actually, regex won't do this for you. You can read how
diff
works on http://en.wikipedia.org/wiki/Diff#Algorithm (that's what you want). You can create a function or class that does simplediff
s using those algoritms.-- edit 1
Good point from Matt Ball: Highlight the difference between two strings in PHP