我在postgres数据库中有一个字段,如下所示:
BACHILLER - CienciasyTecnología。 - Humanidades y Ciencias Sociales。 - Idiomas:inglésyfrancés。 PROYECTOS YSERVICIOSPEDAGÓGICOS - Aula abierta de apoyo(PROA)。 - DepartamentodeOrientacióncondos orientadoras:atenciónindividualizaday colectiva de alumnado y familias。 - Tutoríacoordinadapor niveles。 - PlandeNormalizaciónLingüísticadelEuskera。 - AULATICE。 INNOVACIÓNYPROYECTOSDEFORMACIÓN - Páginawebdel centro,dinámicayde apoyo alaenseñanza。 - 博客:Orientación,Psicología,AGENDA 21 ESCOLAR(A21e),Matemáticas,Física,PARADISE,Números,AsociacióndePadres y Madres ... - AGENDA 21 ESCOLAR(A21e)。参与议程市政。 Certificado de Escuela Sostenible。 - Proyectoplurilingüe:ENGLISH PROJECT。 - Proyecto del Aula de Aprendizaje de Tareas(AAT):cocina。 - Participaciónactivaen los proyectos convocados por el Dpto。 deEducación。 SERVICIOS - 运输escolar subvencionado en ESO。 - Comedor escolar(ESO)。 - Acceso Internet para el alumnado(WI-FI)e Intranet。 INSTALACIONES - Enfermería。 - Dos bibliotecas informatizadas(ESO y Bachiller)。 - TV y DVD en aulas。 - Cuatro aulasdeInformática。 - Salóndeactos。 - Laboratorios de:Física,Química,Ciencias NaturalesyFotografía。 - Talleres de:Plástica,TecnologíaeElectrotecnia。 - Aulas especializadas de:música,arte,euskera,castellano,inglés,AULATICE ... - Amplias instalaciones deportivas,cubiertas y alire libre。力球。
我想使用javascript将此文本转换为:
BACHILLER
- Ciencias y Tecnología.
- Humanidades y Ciencias Sociales.
- Idiomas: inglés y francés.
PROYECTOS Y SERVICIOS PEDAGÓGICOS
- Aula abierta de apoyo (PROA).
- Departamento de Orientación con dos orientadoras: atención individualizada y colectiva de
alumnado y familias.
- Tutoría coordinada por niveles.
- Plan de Normalización Lingüística del Euskera.
- AULATICE.
INNOVACIÓN Y PROYECTOS DE FORMACIÓN
- Página web del centro, dinámica y de apoyo a la enseñanza.
- Blogs: Orientación, Psicología, AGENDA 21 ESCOLAR (A21e), Matemáticas, Física, PARADISE,
Números, Asociación de Padres y Madres…
- AGENDA 21 ESCOLAR (A21e). Participación en la agenda municipal. Certificado de Escuela
Sostenible.
- Proyecto plurilingüe: ENGLISH PROJECT.
- Proyecto del Aula de Aprendizaje de Tareas (AAT): cocina.
- Participación activa en los proyectos convocados por el Dpto. de Educación.
SERVICIOS
- Transporte escolar subvencionado en ESO.
- Comedor escolar (ESO).
- Acceso a Internet para el alumnado (WI-FI) e Intranet.
INSTALACIONES
- Enfermería.
- Dos bibliotecas informatizadas (ESO y Bachiller).
- TV y DVD en aulas.
- Cuatro aulas de Informática.
- Salón de actos.
- Laboratorios de: Física, Química, Ciencias Naturales y Fotografía.
- Talleres de: Plástica, Tecnología y Electrotecnia.
- Aulas especializadas de: música, arte, euskera, castellano, inglés, AULATICE…
- Amplias instalaciones deportivas, cubiertas y al aire libre. Frontón.
我需要编写一个能够解决问题的小函数。我认为在每个“ - ”之前和“。”之后在oupput文本中插入一个新的换行符。标志就够了。它必须足够智能,以便在满足两个要求时不添加两个换行符。
我的javascript知识非常有限,这次我需要同样的帮助...
此致
答案 0 :(得分:4)
实现这一目标的最佳方法可能是使用正则表达式。 如果您想了解有关正则表达式的更多信息,建议您查看RegexOne.com。
我的解决方案是:
textblock.replace(/ - /g, "\n- ").replace(/\./g, ".\n").replace(/^\s*\n/gm, "");
首先,我更换每一个" - "每一个"。"使用换行符,然后删除在满足两个条件时出现的任何空行。
答案 1 :(得分:1)
input.replace(/[-]/g, "\r\n-").replace(/((\.\s*)([A-Z]{2,}))/g,".\r\n$3")