2017-07-29 79 views
0

试图调整一个写在咖啡脚本中的插件。如果此管道字符未被转义为'\|',则有条件分隔带分隔符管道的字符串'|'基于两个条件的咖啡脚本分割功能

"plus\+ | qual\= | pipe\| | minus\-".split'|' 

我试图通过添加一个空格.split(' |')与实现这一点,但有时事实并非如此。

+0

我在找什么,能够提供的条件不\ \ |同时,像split(/??(\\)\ | /)这样的东西 – MuraliKrishna

+1

好吧,但字符串'plus \ + | qual \ ='应该用'“加\\ + | qual \\ =”'字符串文字来定义。 –

+1

查看https://jsfiddle.net/5xd1c0z1/,它适合你吗? –

回答

1

使用.split时,如果将转义反斜杠考虑在内,则分隔符可以被转义的情况很难正确得到。更容易匹配所有内容,但未经过转义的分隔符。

s = "plus\\+ | qual\\= | pipe\\| | minus\\-" 
result = s.match(/(?:\\.|[^\\\|])+/g) 

alert result 
+0

谢谢,我会试试这个 – MuraliKrishna