2017-02-23 26 views
0

在我的node.js程序,我有这样的字符串的NodeJS通过拆分n,而是不\ñ

var body = "i am a bog\n not girl\\n hahaha"; 

我想\n分拆但不拆\\n的字符串。 我目前做这

body.split("\\n") 

但它是不工作,我怎么可以拆分\n但不\\n

感谢

+0

如果你想分割'\ n'分割'\\ n'分割'\\ n'分割'\\ n' - 它是不是火箭手术 –

+0

试试,分裂b y简单的regExp,'body.split(/ \ n /);' – Sravan

+0

,因为我分裂\ n,\\ n也会溢出 –

回答

0

在上文中,已经使用

body.split( “\\ N”)

这意味着分裂将字符串转换为子字符串编辑给定的字符串即\ n

结果,我们可以看到结果作为

[ '我是一个沼泽\ n没有女孩', '哈哈哈']

这不是你的意图。 所以,使用

body.split( “\ n” 个)

其相对于分割的字符串\ n和产生结果作为

[“我是一个沼泽','not girl \ n haha​​ha']

-1

试试这个:

split(/\r\n|\n|\r/); 
+0

你也应该解释这个正则表达式在做什么! – Sikorski

0

你有一个奇怪的字符串,但在正则表达式

var body1 = "i am a bog\n not girl\\n hahaha"; 
 
console.log('body1', body1.split(/\n/)); 
 

 
var body2 = "lorum ipsum \n dun split \\n while \n must be split..."; 
 
console.log('body2', body2.split(/\n/));

使用\n应该做的工作。

编辑:我已经在Node的CLI上检查过它,以确保它在那里也能工作。

> let a = "i am a bog\n not girl\\n hahaha"; 
undefined 
> a 
'i am a bog\n not girl\\n hahaha' 
> a.split(/\n/); 
[ 'i am a bog', ' not girl\\n hahaha' ] 
> 

正如你所看到的,它也可以在那里工作。

+1

这是我在评论中添加的相同内容。 – Sravan

+0

@Sravan为什么不在控制台(chrome)中工作? – m87

+1

@siam因为Chrome的控制台以不同的方式处理字符串。 '\ n'实际上成了一个新行,表示为'↵'。 – KarelG

0

由于您尝试使用body.split("\\n")这显然是错误的。

根据你的问题,你应该先试试,

body.split("\n")

使用正则表达式来拆分的最佳方式。

body.split(/\n/) --->此代码在字符串中找到/n并将其拆分。

var body1 = "i am a bog\n not girl\\n hahaha"; 
 
console.log('body1', body1.split(/\n/)); 
 
console.log('body1', body1.split("\n"));

Open this URL and you will get the same in NODE EXECUTION ENVIRONMENT and you can try many examples

相关问题