PHP's ucwords in TypeScript

How to use

Install via yarn add locutus and import: import { ucwords } from 'locutus/php/strings/ucwords'.

Or with CommonJS: const { ucwords } = require('locutus/php/strings/ucwords')

Use a bundler that supports tree-shaking so you only ship the functions you actually use. Vite, webpack, Rollup, and Parcel all handle this. For server-side use this is less of a concern.

Examples

These examples are extracted from test cases that automatically verify our functions against their native counterparts.

#codeexpected result
1ucwords('kevin van zonneveld')'Kevin Van Zonneveld'
2ucwords('HELLO WORLD')'HELLO WORLD'
3ucwords('у мэри был маленький ягненок и она его очень любила')'У Мэри Был Маленький Ягненок И Она Его Очень Любила'
4ucwords('τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός')'Τάχιστη Αλώπηξ Βαφής Ψημένη Γη, Δρασκελίζει Υπέρ Νωθρού Κυνός'

Here's what our current TypeScript equivalent to PHP's ucwords looks like.

export function ucwords(str: string): string {
// discuss at: https://locutus.io/php/ucwords/
// original by: Jonas Raoni Soares Silva (https://www.jsfromhell.com)
// improved by: Waldo Malqui Silva (https://waldo.malqui.info)
// improved by: Robin
// improved by: Kevin van Zonneveld (https://kvz.io)
// bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)
// bugfixed by: Cetvertacov Alexandr (https://github.com/cetver)
// input by: James (https://www.james-bell.co.uk/)
// example 1: ucwords('kevin van zonneveld')
// returns 1: 'Kevin Van Zonneveld'
// example 2: ucwords('HELLO WORLD')
// returns 2: 'HELLO WORLD'
// example 3: ucwords('у мэри был маленький ягненок и она его очень любила')
// returns 3: 'У Мэри Был Маленький Ягненок И Она Его Очень Любила'
// example 4: ucwords('τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός')
// returns 4: 'Τάχιστη Αλώπηξ Βαφής Ψημένη Γη, Δρασκελίζει Υπέρ Νωθρού Κυνός'

return (str + '').replace(/^(.)|\s+(.)/g, function ($1) {
return $1.toUpperCase()
})
}

Improve this function

Locutus is a community effort following The McDonald's Theory: we ship first iterations, hoping others will improve them. If you see something that could be better, we'd love your contribution.

View on GitHub · Edit on GitHub · View Raw


« More PHP strings functions


Star