Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Replacing tab characters in JavaScript

Tags:

Please consider the following HTML <pre> element:

This is some   example code which     &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;contains tabs 

I would like to replace all of the tab characters with four non-breaking space characters in HTML (i.e. &nbsp;). I have tested the above pre element with JavaScript for the presence of tab characters as follows:

$('pre').ready(function() {     alert(/\t/.test($(this).text())); }); 

But it is always returned false. Can anyone tell me the correct process by which to replace tab spaces from the source code to HTML NBSPs? The tabs have been added by Komodo Edit, and are visible when viewing the source.

like image 200
benmajor Avatar asked Dec 30 '10 12:12

benmajor


People also ask

How do you replace tabs in text?

Press Ctrl-H to open the Replace dialogue, paste (Ctrl-V) into the Find what box and enter what you want to replace with in the Replace with box. This will be either nothing or perhaps a single space, depending on where the unwanted tabs are.

How do you remove T from string?

content=String(content). replace('\t','');


1 Answers

You can do it like this:

$('pre').html(function() {     return this.innerHTML.replace(/\t/g, '&nbsp;&nbsp;&nbsp;&nbsp;'); }); 

That will loop through all pre elements on the page and call the function for each of them. jQuery's html function uses the return value of the function we give to replace the content of each element. We're using String#replace to replace all (note the g flag on the regexp) tab characters in the HTML string with four non-breaking spaces.

Live example

like image 89
T.J. Crowder Avatar answered Sep 18 '22 15:09

T.J. Crowder