jsmodern
Version:
An extension to existing JavaScript, influenced by other great languages such as Rust, Dart, Java, Golang, etc.
14 lines • 453 B
JavaScript
export function preCase(s) {
return !s.length ?
'' :
s.replace(/[^a-zA-Z0-9]+/g, '-')
.replace(/([^A-Z])([A-Z])/g, (_, c0, c1) => {
const cc1 = /[A-Za-z0-9]/.test(c0) ? `-${c1}` : c1;
return `${c0}${cc1}`;
})
.toLowerCase();
}
export function postCase(s, delimiter = '') {
return !s.length ? '' : s.replace(/[^a-zA-Z0-9]/g, delimiter);
}
//# sourceMappingURL=to-case.js.map