簡體   English   中英

正則表達式在一定數量的字符和空格后添加\\ n

[英]regex to add \n after certain number of characters and space

我需要一個可以在一定數量的字符后添加\\ n的正則表達式,如果最后一個字符是word,它將把該單詞推到下一行。

我在正則表達式下面執行添加\\ n的工作,但不是將最后一個單詞推到下一行,而是將單詞保留在該行中。

word.replace(/(.{12}) /g, "$&\n")

如果有人可以幫助我或告訴我是否有可能,我將不勝感激。

例:

word = "love stackoverflow"
after regex it should be love \n stackoverflow 
NOT love stackoverflow\n

我不確定這是否正是您要尋找的東西,但可能會給出一些想法:

.{1,12}(?=[\W])

查找可以找到的盡可能多的字符(介於1和12之間),直到找到后跟非字母的字符(例如空格,行終止符,標點符號等)為止。

https://regex101.com/r/UceAEC/1

這就是您可以在python中實現它的方式。 將此邏輯移植到JavaScript。
我采用了更有意義的12個字符的長度。 如果您願意在正則表達式中替換8。

import re

a = "The a quick brown fox jumps over the lazy dog"
print [b+'\n' for b in re.findall("(.{0,12})(?: |$)",a) if b]

輸出:

['The a quick\n', 'brown fox\n', 'jumps over\n', 'the lazy dog\n']

在Regex101上演示您提到的字符串:
https://regex101.com/r/lmdjwT/1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM