本文整理汇总了TypeScript中xregexp类的典型用法代码示例。如果您正苦于以下问题:TypeScript xregexp类的具体用法?TypeScript xregexp怎么用?TypeScript xregexp使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了xregexp类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: getEntryLanguage
public getEntryLanguage(lang: string): string {
var regex = XRegExp(`\{\{|\\||\}\}`);
return lang.split(regex)[2];
}
示例2: XRegExp
export let bom = /\uFEFF/;
export let bomStart = /^\uFEFF/;
export let bomOpt = /\uFEFF?/;
// export let label = /[a-z](?:[ _\.-]?[a-z0-9]+)*/i;
// TODO kill parenthesis
export let labelX = /[a-z](?:(?:[ _\.-]| [\/@-] )?\(?[a-z0-9]+\)?)*/i;
export let labelY = /[a-z](?:(?:[ _\.-]| [\/@-] )?\(?[a-z0-9]+(?:, [a-z0-9]+)\)?)*/i;
export let labelZ = /[a-z0-9]*(?:[ _\.-]?[a-z0-9]*)*/i;
export let label = /[a-z](?:(?:[ _\.'-]| [\/@-] )?[a-z0-9]+:?)*\+?/i;
export let semverC = /\d+(?:\.\d+)+(?:-[a-z_]\w*(?:\.\d+)*)?/;
export let semverV = /v?(\d+(?:\.\d+)+(?:-[a-z_]\w*(?:\.\d+)*)?)\+?/;
export let semverExtract = /^(.+?)[ -]v?(\d+(?:\.\d+)+(?:-[a-z_]\w*(?:\.\d+)*)?)\+?$/;
export let semverE = /[ -]v?(\d+(?:\.\d+)+(?:-[a-z_]\w*(?:\.\d+)*)?)\+?$/;
// https://stackoverflow.com/questions/6927719/url-regex-does-not-work-in-javascript
export let uri = /((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))/i;
// global unity in unicode
export let name = /[a-z][a-z0-9]*(?:(?:\. |[ _\.\/-]| [\/@-] )?[a-z0-9]+)*\.?/i;
export let nameUTF = XRegExp('[\\p{L}0-9]+(?:(?:\\. |[ _\\.\\/-]| [\\/@-] )?[\\p{L}0-9]+)*\\.?');
// export let nameUTF = XRegExp('\\p{L}+(?:[ \\.@-]\\p{L}+)*');
export let partial = /^\uFEFF?\/\/ DefinitelyTyped: partial\s/;
/* tslint:enable:max-line-length:*/
示例3: transpose
const N_KEYS = 12;
// Chromatic scale starting from C using flats only.
const FLAT_SCALE = ["C", "Db", "D", "Eb", "E", "F", "Gb", "G", "Ab", "A", "Bb", "Cb"];
// Chromatic scale starting from C using sharps only.
const SHARP_SCALE = ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"];
// Regex for recognizing chords
const ROOT_PATTERN = '(?<root>[A-G](#|b)?)';
const SUFFIX_PATTERN = '(?<suffix>\\(?(M|maj|major|m|min|minor|dim|sus|dom|aug)?(\\+|-|add)?\\d*\\)?)';
const BASS_PATTERN = '(\\/(?<bass>[A-G](#|b)?))?';
const MINOR_PATTERN = '(m|min|minor)+';
const CHORD_REGEX = XRegExp(`^${ROOT_PATTERN}${SUFFIX_PATTERN}${BASS_PATTERN}$`);
const MINOR_CHORD_REGEX = XRegExp(`^${ROOT_PATTERN}${MINOR_PATTERN}.*$`);
/** Fluent API for transposing text containing chords. */
class Transposer {
tokens: any[][];
currentKey: KeySignature;
static transpose(text: string | any[][]) {
return new Transposer(text);
}
constructor(text: string | any[][]) {
if (typeof text === "string") {
this.tokens = parse(text);