代码段
正则表达式 获取匹配的内容并且高亮内容。
var regex=/\[\*(.+?)\#(.+?)@\]/g;
var text = "《德邦物流车辆运输协议郑州港达合同主体变更》三方协议甲方:德邦物流股份有限公司乙方:[*PartyB#郑州港达物流@]丙方:[*PartyB#河南港达供应链管理有限公司@]根据《中华人民共和国合同法》的规定,甲乙双方在已签订所有合同的基础上,甲方履行原合同,原郑州港达物流有限公司承运线路自2019年8月1日起发生的业务款项,均由丙方河南港达供应链管理有限公司负责开具发票,甲方取得相应发票后付款至丙方指定账户。第二条:原合同中乙方账户信息:开户名称:[*Receiptname#郑州港物流有限公司@];开户银行:[*Receiptbank#中国建设银路支行@];开户账号:[*PartyAaccount#41001505010050208963@]变更为:乙方账户信息:开户名称:[*Receiptname#河南港达公司@];开户银行:[*Receiptbank#中国建设股津支行@];开户账号:[*BeginDate#41@]050168680800000545本协议生效后,是原合同及其补充协议不可分割的组成部分,与原合同具有同等的法律效力。除本协议明确变更的条款外,协议未涉及事宜,以原合同及其补充协议为准。本协议一式三份,自2019年8月1日生效,甲乙丙三方各执壹份,具有同等的法律效力。附:变更合同主体明细签订日期合同名称2017/11/30德邦物流车辆运输协议-郑州青岛双边线路2018/9/26德邦物流车辆运输协议郑州-呼和浩特双边线路2018/9/7德邦物流车辆运输协议郑州-合肥双边线路2018/11/5德邦快递车辆运输协议苏州-东平双边2018/12/6德邦快递车辆运输协议郑州-东平双边线路2019/1/21德邦快递车辆运输协议郑州-江夏线路2019/2/22德邦快递车辆运输协议郑州-芜湖线路2019/6/5德邦快递公路运输服务合同甲方:德邦物流股份有限公司乙方:郑州港达物流有限公司日期:日期:2019-07-3113:44:212019-07-2610:01:04丙方:[*PartyB#河南公司@]"
var result;
var rtn = "";
var lastIndex = 0;
list = [];
while((result=regex.exec(text))!=null) {
console.log(result[0], result[1],result[2], result.index , result.index + result[0].length);
rtn += text.substring(lastIndex, result.index) + result[1];
list.push({
content: text.substring(lastIndex, result.index)
});
list.push({
content: result[2],
field: result[1]
});
lastIndex = result[0].length + result.index;
console.log("!!!!!!!!!!!!!!!!!!!!!!!!!")
}
if(lastIndex != text.length ) {
list.push({
content: text.substring(lastIndex)
});
}
console.log(list);