我得到以下字符串
var intNote =“ 08.03.2018 09:53:37-Mustermann,Max(工作笔记)内部工作笔记”
我通过以下方式进行操作:
var tempArr = intNote.split('-');
var tempArr2 = tempArr[1].split('(Work notes)');
internalDate = tempArr[0]; // >> 08.03.2018 09:53:37
internalName = tempArr2[0]; // >> Mustermann, Max
internalNote = tempArr2[1]; // >> Work note internal
例如,当我有以下字符串时
var intNote =“ 08.03.2018 09:53:37-Mustermann,Max(工作笔记)
注意-内部”
我得到结果
internalNote = tempArr2[1]; // >> Work note
我知道“问题”是运算符
.split('-')
。我如何定义它以仅在第一个给定的“-”处分割结果internalNote = tempArr2[1]; // >> Work note - internal
最佳答案
或者,您可以一直使用正则表达式。
/([^-]*)-(.*)\(Work notes\)(.*)/
将为您提供三个捕获组(编号1-3)以及您要使用的字符串。
var intNote1 = "08.03.2018 09:53:37 - Mustermann, Max (Work notes) Work note internal",
intNote2 = "08.03.2018 09:53:37 - Mustermann, Max (Work notes) Work note - internal",
re = /([^-]*)-(.*)\(Work notes\)(.*)/,
arr;
arr=re.exec(intNote1);
arr.shift(); // Remove index 0 (full match)
document.write('<br/>1:' + intNote1 + '<br/>' + arr.join('<br/>'));
arr=re.exec(intNote2);
arr.shift(); // Remove index 0 (full match)
document.write('<br/><br/>2:' + intNote2 + '<br/>' + arr.join('<br/>'));