我正在尝试提取字符串的一部分,并使用javascript中的regex替换它。
例如:

var string = "application == xyz AND location == abc AND packet.vlan == 10 OR ip == 1.1.1.1"


我需要更换

packet.vlan == 10




packet.vlan == VLAN-10


我尝试了以下

var regexp = /(\=.+)/g;
string.replace(regexp, ("==" + "VLAN-10");


选择必须在下一个OR/AND处停止。例如,在上述情况下,必须在字符串ip开始之前停止选择。

最佳答案

您的正则表达式的意思是“找到后跟一个或多个字符的任何'='符号。

您可以看一下https://regex101.com/,它提供了调试正则表达式的直观方法。

尝试string.replace(/(packet\.vlan == )(\d+)/, "$1VLAN-$2");

注意:“字符串”对于变量来说确实是个坏名字。

关于javascript - 使用正则表达式和javascript仅提取字符串的一部分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46343642/

10-12 21:48