SOURCE

console 命令行工具 X clear
> [{"content0":"SDN 系统架构介绍"},{"content1":"● 运营商网络架构演进与挑战"},{"content2":"■ 网络演进与未来"},{"content2":"■ 运营商骨干网/城域网/承载网网络架构介绍"},{"content2":"■ 未来运营商网络的机遇与挑战"},{"content1":"● SDN 架构与工业生态系统"},{"content2":"■ SDN在未来网络中的关键技术介绍"},{"content2":"■ SDN 原理介绍"},{"content2":"■ SDN 网络层技术介绍"},{"content2":"■ ONF中IETF组织对SDN 的标准定义介绍"},{"content2":"■ OpenDayLight (ODL)介绍"},{"content2":"■ Open Network Operating System (ONOS)介绍SDN解决方案产品"},{"content1":"● SDN 敏捷控制器概述"},{"content2":"■ 华为敏捷控制器产品概述"},{"content2":"■ 华为敏捷控制器基本操作"},{"content2":"■ 华为敏捷控制器产品架构介绍"},{"content2":"■ 华为敏捷控制器性能管理"},{"content2":"■ 华为敏捷控制器高可靠性技术"},{"content1":"● SDN CloudEngine交换机介绍"},{"content2":"■ CE系列交换机产品概述"},{"content2":"■ CE交换机硬件介绍"},{"content2":"■ CE交换机SDN相关特性介绍"},{"content2":"■ CE交换机基本操作维护"},{"content1":"● SDN E9000服务器介绍"},{"content2":"■ 华为E9000服务器硬件介绍"},{"content2":"■ 华为E9000服务器内部交换板介绍"},{"content2":"■ 华为E9000服务器基本操作维护SDN方案技术原理与实现"},{"content1":"● VxLAN/EVPN操作与维护"},{"content2":"■ VxLAN和EVPN概述"},{"content2":"■ VxLAN报文封装"},{"content2":"■ VxLAN在SDN中的应用"},{"content2":"■ EVPN协议控制面介绍"},{"content2":"■ EVPN在DCI互联场景应用"},{"content2":"■ VxLAN和EVPN上机操作"},{"content1":"● 虚拟化技术介绍"},{"content2":"■ 网络虚拟化的驱动力与关键需求"},{"content2":"■ 网络虚拟化关键技术:大二层网络"},{"content2":"■ 网络虚拟化关键技术:多租户网络"},{"content1":"● SDN-DCN云网一体化方案介绍"},{"content2":"■ SDN-DCN解决方案概述"},{"content2":"■ 数据中心常用概念介绍"},{"content2":"■ SDN-DCN网络架构介绍"},{"content2":"■ SDN-DCN部件介绍"},{"content1":"● SDN CloudVPN解决方案介绍"},{"content2":"■ Cloud VPN解决方案概述"},{"content2":"■ Cloud VPN组件和场景介绍"},{"content2":"■ CPE和vCPE介绍"},{"content2":"■ IES-O/IES-A介绍"},{"content2":"■ CloudVPN业务下发流程简介"}]
>
console
var textContent = "SDN 系统架构介绍\n#运营商网络架构演进与挑战\n##网络演进与未来\n##运营商骨干网/城域网/承载网网络架构介绍\n##未来运营商网络的机遇与挑战\n#SDN 架构与工业生态系统\n##SDN在未来网络中的关键技术介绍\n##SDN 原理介绍\n##SDN 网络层技术介绍\n##ONF中IETF组织对SDN 的标准定义介绍\n##OpenDayLight (ODL)介绍\n##Open Network Operating System (ONOS)介绍SDN解决方案产品\n#SDN 敏捷控制器概述\n##华为敏捷控制器产品概述\n##华为敏捷控制器基本操作\n##华为敏捷控制器产品架构介绍\n##华为敏捷控制器性能管理\n##华为敏捷控制器高可靠性技术\n#SDN CloudEngine交换机介绍\n##CE系列交换机产品概述\n##CE交换机硬件介绍\n##CE交换机SDN相关特性介绍\n##CE交换机基本操作维护\n#SDN E9000服务器介绍\n##华为E9000服务器硬件介绍\n##华为E9000服务器内部交换板介绍\n##华为E9000服务器基本操作维护SDN方案技术原理与实现\n#VxLAN/EVPN操作与维护\n##VxLAN和EVPN概述\n##VxLAN报文封装\n##VxLAN在SDN中的应用\n##EVPN协议控制面介绍\n##EVPN在DCI互联场景应用\n##VxLAN和EVPN上机操作\n#虚拟化技术介绍\n##网络虚拟化的驱动力与关键需求\n##网络虚拟化关键技术:大二层网络\n##网络虚拟化关键技术:多租户网络\n#SDN-DCN云网一体化方案介绍\n##SDN-DCN解决方案概述\n##数据中心常用概念介绍\n##SDN-DCN网络架构介绍\n##SDN-DCN部件介绍\n#SDN CloudVPN解决方案介绍\n##Cloud VPN解决方案概述\n##Cloud VPN组件和场景介绍\n##CPE和vCPE介绍\n##IES-O/IES-A介绍\n##CloudVPN业务下发流程简介"


var arr = formatTeachText(textContent);
console.info(arr)


// 处理培训内容
function formatTeachText(textContent) {
    if (!textContent || textContent == undefined) {
        return "/";
    }
    let arr = textContent.split('\n');
    let html = [];
    arr.map(res => {
        let newStr = res.replace(/^#{4}/g, '◮ ').replace(/^#{3}/g, '√ ').replace(/^#{2}/g, '■ ').replace(/^#{1}/g, '● ');
        let obj = {}
        if(newStr.indexOf('●') == 0){
            obj = {"content1":newStr}
        } else if(newStr.indexOf('■') == 0){
            obj = {"content2":newStr}
        } else if(newStr.indexOf('√') == 0){
            obj = {"content3":newStr}
        } else if(newStr.indexOf('◮') == 0){
            obj = {"content4":newStr}
        } else {
            obj = {"content0":newStr}
        }
        html.push(obj);
    })
    return html;
}