javascript - 在正则表达式 Javascript 中获取内部字符串前后的字符串

标签 javascript regex string

我有这样一个字符串:

20 EQUALS 'Value goes here'

我想把它分成 3 个单独的字符串:

条件字段 = 20 conditionOperation = 'EQUALS' conditionValue = 'Value goes here'

我试过这个来获取条件字段:

var conditionField = condition.replace(/(.*)(.*EQUALS)/, '$1');

但它既是开始也是结束。

我在拆分它和处理值中的空格和空格时遇到了问题。

最佳答案

如果您想任意提取引用的术语和单个单词,您的问题实际上会有点挑战。但是由于您似乎有一个相当固定的结构,从一个数字开始,然后是一个单词命令,然后是第三个术语,我们可以在这里使用以下正则表达式模式:

([^\\s]*)\\s+([^\\s]*)\\s+(.*)

在匹配运行后,上面括号中的每个术语都将作为捕获组提供。在这种情况下,我只是将前两个学期之后的所有内容都放在一起。

var string = "20 EQUALS 'Value goes here'";

var re = new RegExp("([^\\s]*)\\s+([^\\s]*)\\s+(.*)");
match = re.exec(string);
if (match != null) {
    console.log(match[1])
    console.log(match[2])
    console.log(match[3])
}

关于javascript - 在正则表达式 Javascript 中获取内部字符串前后的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45789535/

相关文章:

c# - 替换字符串C#中的值不起作用

python - 多列pandas向量化字符串函数?

javascript - ASP.NET MVC 4 AJAX.BeginForm 和 PartialViews

javascript - jqgrid 将数据附加到单元格

javascript - 框架和 iframe 是否有独立的 javascript 上下文?

正则表达式匹配大写

regex - 如果元素以数字开头,则不要选择结尾数字

javascript - ASP.NET MVC 2 数据验证 : Make C# Regex work for both C# and JavaScript simultaneously?

string - 翻转算法

javascript - 使用 JS 设置 HTML "title"属性不会呈现 &