UNPKG

devexpress-richedit

Version:

DevExpress Rich Text Editor is an advanced word-processing tool designed for working with rich text documents.

28 lines (27 loc) 930 B
import { StringUtils } from '@devexpress/utils/lib/utils/string'; import { ValueInfo } from './value-info'; export class StringValueParser { static parse(inputString) { return StringUtils.isNullOrEmpty(inputString) ? ValueInfo.empty : StringValueParser.splitUnitFromValue(inputString); } static splitUnitFromValue(inputString) { let value = ''; let unit = inputString; const pos = inputString.search(StringValueParser.regex); if (pos != -1) { value = inputString.substring(0, pos); unit = inputString.substring(pos); } else { value = inputString; unit = ''; } const val = parseFloat(value); return isNaN(val) ? new ValueInfo(unit) : new ValueInfo(unit, val); } } StringValueParser.regex = /(?<=[0-9.])[^0-9.]/;