Verifying the frequency of two specific strings within a JavaScript string

How can I determine the number of times two distinct patterns occur in a given string? Specifically, I need to identify instances of fly or flies. While I have managed to find occurrences of one pattern, I'm unsure how to search for both.

Here's what I've attempted:

const flyCount = str => {
   return (str.match(/fly/g) || str.match(/flies/g) || []).length;
}

Answer №1

  1. To find both words, combine the regex expressions.

Note: Utilize \b (word boundary) to locate exact words. If the words can be part of other words, eliminate the \b.

const flyCount = str =>
   (str.match(/\b(?:fly|flies)\b/g) || []).length;

const result = flyCount('Look how he flies. He can fly');

console.log(result);

  1. Alternatively, determine the length of each expression and add them together:

const flyCount = str =>
   (str.match(/\bfly\b/g) || []).length + (str.match(/\bflies\b/g) || []).length;

const result = flyCount('Look how he flies. He can fly');

console.log(result);

Answer №2

To accomplish this task, utilize the | regex operator along with the inclusion of the \b word boundary for precision.

const countFlies = sentence => (sentence.match(/\b(?:fly|flies)\b/g) || []).length

console.log(countFlies('One fly, two flies'))

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Update the content of the widget

Currently, I am utilizing the following script to display NBA standings: <script type="text/javascript" src="https://widgets.sports-reference.com/wg.fcgi?script=bbr_standings&amp;params=bbr_standings_conf:E,bbr_standings_css:1&amp"></sc ...

value displayed - real-time editor

Recently, I added in-place editing feature to one of my models to enhance user experience. Among the attributes of the model, there is one called PRICE, for which I utilized the to_currency method to format the value properly before displaying it. Howeve ...

Fetching information with request query parameters in Node.js

Working on implementing email verification using nodemailer for user sign-ups. The process involves sending out an email containing a link (usually something like localhost:3000/verify/?id=##). After the user clicks the link, I can see that a GET request ...

What causes the gap between the image and div when the height of the div is adjusted?

Here is a simple HTML structure: <div> <img style="width:100%;height:100%"/> </div> The div appears like this in Chrome: https://i.sstatic.net/pIFRf.png However, there is a gap between the div and the image: https://i.sstatic.net ...

Retrieving individual property from JSON with an array of values provided

Is there a way to extract names from the provided JSON, based on an array of IDs? [ { "id": 0, "name": "salesTransNo" }, { "id": 1, "name": "terminalNo" }, { "id": 2, "name": "salesTransDate" } ...

Stop the annoying automatic page refreshing in your Angular single-page application

My Angular routing is set up with HTML5 mode in the following way: app.config($routeProvider, $locationProvider){ $locationProvider.html5Mode(true); $routeProvider.when("/", { templateUrl: "/views/login.html" }).when("/dashboard", { templa ...

Verifying user authorization for Microphone access prior to triggering event in React application

I have created a React component featuring a microphone button that operates as follows: OnMouseDown => Initiates audio recording by the user OnMouseUp => Ceases audio recording To elaborate, while the button is pressed down, the user can continue ...

AngularJS enables box to smoothly slide up and down when hovered over

I am attempting to create a div that will overlay an image on hover with a slide up and slide down effect. Can anyone provide guidance on how to achieve this without relying on jQuery? I would prefer to utilize only AngularJS in my application. Here is a ...

Alert: It is not possible to update the React state on a component that is already unmounted after updating the context and switching to a different page

I am facing a challenge that requires your assistance In the /editpage, there is a changeProfile function that should be triggered upon clicking const appContext = useContext(AppContext); const [userLogin, setUserLogin] = appContext.userLogin; const [use ...

The deployment of the Fire-base Cloud Function was successful and error-free. However, the function does not appear to exist in the Firebase system

After deploying a JavaScript Cloud Function, it shows that the deployment is completed. However, when I check Firebase, the function is not there. Oddly, TypeScript Cloud Functions deploy successfully. I followed all the steps outlined in the original Fir ...

What are the reasons that execCommand does not function correctly when attempting to justify text?

Why isn't justify with execCommand working properly? Take a look at the code below: $('#JustifyLeft').click(function(){ document.execCommand("JustifyLeft", false, ""); }); <script src="https://ajax.googleapis.com/ajax/libs/jquery/2 ...

Executing JavaScript function specifically when accessed from a particular page

Is there a way to toggle a JavaScript function that opens a specific tab on my page when it loads, but only have this function automatically activate if the user is coming from another page? Here's an example: On Page A, there's a function that ...

Don't allow users to switch views without saving their changes

We are working with a Backbone.js application that presents various forms to users. Our goal is simple: if a user navigates away from the page without saving the completed form, we need to show a confirmation dialog. When dealing with traditional forms, i ...

The connection was forcibly rejected when trying to send a proxy request from one local server to another on

As a newcomer to Angular, I have been following a tutorial video step by step, but I've hit a roadblock that I've been trying to resolve for nearly two weeks. Despite spending numerous hours searching through forums for solutions, I have not been ...

Inquiries for Web-Based Applications

As I contemplate coding my very first webapp, I must admit that my skills are somewhere between beginner and intermediate in html, css, js, jquery, node, sql, and mongodb. However, the challenge lies in not knowing how to bring my vision to life. My ulti ...

What is preventing us from setting a child's width and height to match that of the parent element?

Parent element is a div with a width of 300px and a height of 40px, containing a child input. In the following code snippet: myinput = document.getElementById("e2"); myinput.style.cssText ='width:100%;height:100%;padding:0px;margin:0px;' div{ ...

Tips for maintaining fixed div sizes when resizing the window while preserving aspect ratio

Is there a way to maintain the same aspect ratio and keep the left and right divs side by side when resizing the window? I want them to stay consistent without changing no matter how much I resize the window. Here is an example of what I am looking for: ...

Creating a tree structure from JSON data involves adjusting the entries as demonstrated below, utilizing programming languages for implementation

Data Entry: const info = [ { type: 'Electronics', category: 'cellphone', price: 800, profit: 50, }, { type: 'Clothing', category: 'shoes', price: 100, profit: 30, }, { ty ...

Implementing new updates to an object without affecting existing values in Vue.js 2

I am currently facing an issue with updating values for an object received in a payload before saving it to the database. Despite making changes, the new values are not being persisted correctly. I am utilizing Vue.js 2 for this task. How can I effectively ...

Information provided in a login form does not carry over to a different page display

I'm currently facing a problem with my JavaScript code. I have constructed a login form and am attempting to transfer the data from the form to another page where it will be showcased in a table. Regrettably, the details are failing to appear on the s ...