Title Case Tester

Test Your String in My Title Case Tester

by Thomas

HTML

<div>Title Case Tester</div>
<br>
<input id="src" placeholder="Enter test string" />
<button id="btn">Submit</button>
<br><br>
<div>Results:</div>
<div id="results"></div>

JavaScript

$(document).ready(function() {
  $('#src').keypress(function(e) {
    if (e.which == 13) {
      testTitleCase()
    }
  })
  $('#btn').click(function() {
    testTitleCase()
  })
})

function testTitleCase() {
  var testString = $('#src').val()
  
  var titleCaseString = testString    
  	.replace(/(_|-)/g, ' ')
    .trim()
    .replace(/\w\S*/g, function(str) {
        return str.charAt(0).toUpperCase() + str.substr(1)
    })   
    .replace(/([a-z])([A-Z])/g, '$1 $2')
    .replace(/([A-Z])([A-Z][a-z])/g, '$1 $2')    
    
  $('#results').append('<div>"' + testString + '" -> "' + titleCaseString + '"</div>')

  $('#src').val('')
}