我试图从包含字符串的字段返回第2行。我尝试过索引和拆分,它让我接近了,但是没有成功地使用换行符\n。
如何从下面的字符串返回“赋值组:TI技术监控”或理想的“TI-BSM-技术监控”。
Call-out: true
Assignment Group: TI-BSM-Tech Monitoring
Data String - index=cisco_ise sourcetype=cisco:ise:syslog source=* Alert when critical services are no longer logging Hourly一些我尝试过的代码
var description = "Call-out: true Assignment Group: TI-BSM-Tech Monitoring next String - index=cisco_ise sourcetype=cisco:ise:syslog source=* Alert when critical services are no longer logging Hourly".split('Assignment Group:')[1];
var assignment = description.substring(description.indexOf('Group: ') + 2);
console.log(assignment);谢谢
发布于 2022-09-19 23:28:20
这不是一个很好的答案,但不知道你还会怎么做。被Assignment Group:拆分,然后被"\n"分割。您必须使用双引号来捕获换行符。
let description = document.querySelector('textarea').value;
let assignment = description.split('Assignment Group:')[1].split("\n")[0].trim();
console.log(assignment);<textarea rows="5" cols="50">
Call-out: true
Assignment Group: TI-BSM-Tech Monitoring
Data String - index=cisco_ise sourcetype=cisco:ise:syslog source=* Alert when critical services are no longer logging Hourly
</textarea>
发布于 2022-09-20 01:18:47
这也可以用正则表达式来完成。
let description = document.querySelector('textarea').value;
// skip everything until Assignment Group, read everything that isn't a newline, discard everything else
// m is the multi-line flag
let assignment = description.replace(/^.*\nAssignment Group:\s+([^\n]+).*\n.*$/m,'$1');
document.getElementById("output").textContent = assignment;<textarea rows="5" cols="50">
Call-out: true
Assignment Group: TI-BSM-Tech Monitoring
Data String - index=cisco_ise sourcetype=cisco:ise:syslog source=* Alert when critical services are no longer logging Hourly
</textarea>
<br>
<output id="output">
</output>
https://stackoverflow.com/questions/73780156
复制相似问题