当一个连续单词的长度为50个字符时,插入空格

Insert space when a continuous word is 50 characters long

本文关键字:50个 字符 空格 插入 一个 单词 连续      更新时间:2023-09-26

我想把这个字符串切割成50个字符,其中(在空格之后)它开始计数到50(不包括空格),如果部分超过50,它会插入一个空格。到目前为止,我可以将其剪切,但我不知道如何指定"排除空格"。尝试过[^'s],但没有快乐。

var str = " http://this.domain.com/fff/222/widget.css http://www.domain.com/myfolder/uploads/1/3/3/7/2332053/custom_themes/8787687678644/more_custom_themes/files/my-main_style.css?8763487634 http://cdn.domain.com/folder/images/thisfolder/common.css?9444"
str.replace(/'s('w.{50})/g,' $1 ');

试试这个:

var str = " http://this.domain.com/fff/222/widget.css http://www.domain.com/myfolder/uploads/1/3/3/7/2332053/custom_themes/8787687678644/more_custom_themes/files/my-main_style.css?8763487634 http://cdn.domain.com/folder/images/thisfolder/common.css?9444"
str = str.replace(/([^ ]{50})/g, "$1 ");

如果你这样做的原因是为了防止长字符串从浏览器窗口中弹出,你可能想尝试CSS解决方案:

CSS有一个word-wrap属性,您可以使用它来告诉浏览器打断长单词,即使它们没有自然的断点。

#divwithlongword {
    word-wrap: break-word;
}

现在,如果你有如下HTML:

<div id='divwithlongword'>myextraordinarilyandexcessivelylongdomainnamegoeshere.com</div>

它将在域名中需要换行的地方进行换行。

这在所有主流浏览器中都受支持--请参阅http://caniuse.com/#search=wordwrap

希望能有所帮助。

您使用以下正则表达式:

('S{50})

''S-匹配任何不是空白字符的字符(空格、制表符、换行符)。