I have multiple HTML files with numbered paragraphs. Without CSS, I'm looking for a way to add bold to the numbers.
I tried with jQuery adding this option:
$(document).html(html.replace("1", "<strong>1</strong>"))
but each file has 50 numbers. How can I do it for all of them?
The HTML file is like this:
<div id="content">1 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. . <br />
2 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. Duis hendrerit velit at mauris molestie, tempus tristique eros sollicitudin. . <br />
3 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. Duis hendrerit velit at mauris molestie, tempus tristique eros sollicitudin. . <br />
CodePudding user response:
You could use regular expressions with replace to accomplish this, like the snippet below.
Quick breakdown of the /([0-9])/g query:
- The beginning and ending slashes without quotation marks indicate that we're using
replacewith a regex statement - The
gat the end means we're looking for the query globally instead of just once - The parentheses indicates we're searching for regex groups, which allows us to include them in the replacement like
$1,$2, etc (but we only need the first one since we have one group) - We're looking for only numeric characters,
[0-9]
$('#content').html($('#content').html().replace(/([0-9])/g, "<strong>$1</strong>"))
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="content">
1 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. . <br />
2 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. Duis hendrerit velit at mauris molestie, tempus tristique eros sollicitudin. <br />
3 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. Duis hendrerit velit at mauris molestie, tempus tristique eros sollicitudin. <br />
50 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. Duis hendrerit velit at mauris molestie, tempus tristique eros sollicitudin.
</div>
CodePudding user response:
You could use replaceAll().
\d searches for all digits, and $& is the match.
jQuery
$('#content').html($('#content').html().replaceAll(/\d/g, '<strong>$&</strong>'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="content">1 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. . <br /> 2 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis
nulla tempus. Duis hendrerit velit at mauris molestie, tempus tristique eros sollicitudin. . <br /> 3 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. Duis hendrerit velit
at mauris molestie, tempus tristique eros sollicitudin. . <br />
</div>
Vanilla JS
const content = document.getElementById('content');
content.innerHTML = content.innerHTML.replaceAll(/\d/g, '<strong>$&</strong>');
<div id="content">1 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. . <br /> 2 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis
nulla tempus. Duis hendrerit velit at mauris molestie, tempus tristique eros sollicitudin. . <br /> 3 Lorem ipsum pain sit amet, consectetur adipiscing elit. Suspendisse egestas tortor non elit finibus, nec iaculis nulla tempus. Duis hendrerit velit
at mauris molestie, tempus tristique eros sollicitudin. . <br />
</div>
CodePudding user response:
change the string replace using javascript
html content useing del or ins elements var str = "JavaScript replace method test"; var res = str.replace("test", "success");
