将字体家族与字体名称节点js分开

时间:2018-07-06 12:15:03

标签: javascript

当前,我正在使用fs从磁盘上的文件夹中读取所有可用字体

var app = angular.module('app', ['ui.router']);
app.config(function($stateProvider, $urlRouterProvider) {
  $urlRouterProvider.otherwise("/index");
  $stateProvider
    .state("index", {
      url: "/index",
      templateUrl: "index.html"
    })
    .state("menu", {
      url: "/menu",
      templateUrl: "menu.html"
    })
    .state("indication_patient", {
      url: "/indication_patient",
      templateUrl: "indication_patient.html"
    })
    .state("competition", {
      url: "/competition",
      templateUrl: "competition.html"
    })
    .state("patient", {
      url: "/patient",
      templateUrl: "patient.html"
    })
    .state("athlete", {
      url: "/athlete",
      templateUrl: "athlete.html"
    });
});

但是我不确定如何将字体系列与字体名称分开。对此有什么帮助

2 个答案:

答案 0 :(得分:0)

如果可以确定文件名将为{fontFamily}-{fontStyle}.ttf模式,则可以使用正则表达式:

const regex = /(.*)-(.*).ttf/gm;
const filename = 'EncodeSansCondensed-Black.ttf';

const match = regex.exec(filename);

const fontFamily = match[1];
const fontStyle = match[2];

console.log(fontFamily, fontStyle);

答案 1 :(得分:0)

您的意思是仅将字符串的第一部分保留在破折号之前吗?

如果是这样,请查看String.prototype.split()文档,它会完全满足您的要求。

由于明显的原因,没有代码示例,它是一种单行代码,可让您习惯split方法。