我在textarea中有一个文本,我使用.value属性读取它。
现在我想从我的文本中删除所有的换行符(当你按Enter时产生的字符)现在使用正则表达式替换,但我如何在正则表达式中指示换行符?
如果不可能,还有别的办法吗?
我在textarea中有一个文本,我使用.value属性读取它。
现在我想从我的文本中删除所有的换行符(当你按Enter时产生的字符)现在使用正则表达式替换,但我如何在正则表达式中指示换行符?
如果不可能,还有别的办法吗?
当前回答
这将删除你所有的换行,空格,不必要的字符
n n n n n n n n n n n n n n n n n n n n n n n n n console.log (str) var output = str.replace(/\n|\r|\W/g, ""); console.log(输出)
“书”
其他回答
我经常在jsons中的(html)字符串中使用这个正则表达式:
替换(/[\n\r\t\s]+/g, ' ')
字符串来自CMS或i18n php的html编辑器。常见的场景有:
- lorem(.,)\nipsum
- lorem(.,)\n ipsum
- lorem(.,)\n
ipsum
- lorem ipsum
- lorem\n\nipsum
- ... many others with mixed whitespaces (\t\s) and even \r
正则表达式避免了这些丑陋的事情:
lorem\nipsum => loremipsum
lorem,\nipsum => lorem,ipsum
lorem,\n\nipsum => lorem, ipsum
...
当然不是所有的用例,也不是最快的用例,但对于大多数文本区域和网站或web应用程序的文本来说已经足够了。
要删除新的行字符,使用以下命令:
yourString.replace(/\r?\n?/g, '')
然后你可以删除字符串的前导和尾随空格:
yourString.trim()
Const text = 'test\nwith\nline\nbreaks'
const textwithoutbreak = text.split('\n')。加入(' ')
在mac上,只需在regexp中使用\n来匹配换行符。代码是字符串。Replace (/\n/g, "), ps:后面的g表示匹配所有,而不仅仅是第一个。
在窗户上,它将是\r\n。
你可以在正则表达式中用\n表示换行,用\r表示回车。
var str2 = str.replace(/\n|\r/g, "");
不同的操作系统使用不同的行尾,使用不同的\n和\r组合。这个正则表达式将全部替换。