How do I find words that start with a specific letter?

I want to find words that start with a specific letter in a string using the following code. The specific letter will be provided by the user in the text box.

This is what I have:

<!DOCTYPE html>
<html>
<body>

<input id="srch" type="text" />
<button onClick=searchword()>Search</button>

<p id="wrd" > hallo, this is a test john doe .
Another tea house pole.
</p>

</body>

<script>

function searchword() {

var s = document.getElementById("wrd").innerHTML;
var p= document.getElementById("srch").value;

var regx = new RegExp("(?:^|\W)" + p + "(\w+)(?!\w)","gi");

var re = regx, match, matches = [];

while (match = re.exec(s)) {
  matches.push(match[0]);
}
alert(matches);


}
</script>
</html>

      

+3


source to share


1 answer


You can use word boundaries \b

, the following example shows you how to match every word starting witht



var string ="hallo, this is a test john doe .Another tea house pole. Hey Tom."
result = string.match(/(\bt\S+\b)/ig);
alert(result);
      

Run codeHide result


+2


source







All Articles