Node-Red configuration
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

index.js 808B

1234567891011121314151617181920212223242526272829303132333435363738
  1. var sentence = require('to-sentence-case')
  2. var escape = require('escape-regexp-component')
  3. var minors = require('title-case-minors')
  4. /**
  5. * Export.
  6. */
  7. module.exports = toTitleCase
  8. /**
  9. * Matchers.
  10. */
  11. var escaped = minors.map(escape)
  12. var minorMatcher = new RegExp('[^^]\\b(' + escaped.join('|') + ')\\b', 'ig')
  13. var punctuationMatcher = /:\s*(\w)/g
  14. /**
  15. * Convert a `string` to title case.
  16. *
  17. * @param {String} string
  18. * @return {String}
  19. */
  20. function toTitleCase(string) {
  21. return sentence(string)
  22. .replace(/(^|\s)(\w)/g, function (matches, previous, letter) {
  23. return previous + letter.toUpperCase()
  24. })
  25. .replace(minorMatcher, function (minor) {
  26. return minor.toLowerCase()
  27. })
  28. .replace(punctuationMatcher, function (letter) {
  29. return letter.toUpperCase()
  30. })
  31. }